import com.gradle.publish.DependenciesBuilder apply plugin: 'java' apply plugin: 'kotlin' apply plugin: 'com.github.johnrengelman.shadow' apply plugin: "com.gradle.plugin-publish" sourceCompatibility = 1.8 tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all { kotlinOptions { freeCompilerArgs += "-Xjsr305=strict" languageVersion = language_version apiVersion = language_version jvmTarget = "1.8" } } dependencies { testCompile group: 'junit', name: 'junit', version: '4.12' shadow group: 'org.jetbrains.kotlin', name: 'kotlin-stdlib', version: kotlin_for_gradle_runtime_version shadow group: 'org.jetbrains.kotlin', name: 'kotlin-reflect', version: kotlin_for_gradle_runtime_version compile project(":integration") compileOnly gradleApi() compileOnly localGroovy() implementation "com.google.code.gson:gson:$gson_version" } task sourceJar(type: Jar) { from sourceSets.main.allSource } processResources { eachFile { if (it.name == "org.jetbrains.dokka.properties") { it.filter { line -> line.replace("", dokka_version) } } } } shadowJar { baseName = 'dokka-gradle-plugin' classifier = '' } apply plugin: 'maven-publish' publishing { publications { dokkaGradlePlugin(MavenPublication) { publication -> artifactId = 'dokka-gradle-plugin' artifact sourceJar { classifier "sources" } project.shadow.component(publication) } } } bintrayPublication(project, ['dokkaGradlePlugin']) configurations.archives.artifacts.clear() artifacts { archives shadowJar } pluginBundle { website = 'https://www.kotlinlang.org/' vcsUrl = 'https://github.com/kotlin/dokka.git' description = 'Dokka, the Kotlin documentation tool' tags = ['dokka', 'kotlin', 'kdoc'] plugins { dokkaGradlePlugin { id = 'org.jetbrains.dokka' displayName = 'Dokka plugin' } } withDependencies { List list -> list.clear() def builder = new DependenciesBuilder() builder.addUniqueScopedDependencies(list, configurations.shadow, "compile") } mavenCoordinates { groupId = "org.jetbrains.dokka" artifactId = "dokka-gradle-plugin" } }