使用Gradle打包Kotlin项目代码、生成Kotlin代码文档
Kotlin项目
在 Root Project 下的 build.gradle
文件中 buildscript
下的 dependencies
中添加:
classpath "org.jetbrains.dokka:dokka-gradle-plugin:0.9.15"
在 module 下的 build.gradle
文件中添加:
apply plugin: 'org.jetbrains.dokka'
task generateSourcesJar(type: Jar) {
group = 'jar'
from sourceSets.main.java.srcDirs
classifier = 'sources'
}
task dokkaJavadoc(type: org.jetbrains.dokka.gradle.DokkaTask) {
outputFormat = "javadoc"
outputDirectory = javadoc.destinationDir
}
task generateJavadoc(type: Jar, dependsOn: dokkaJavadoc) {
group = 'jar'
classifier = 'javadoc'
from javadoc.destinationDir
}
artifacts {
archives generateJavadoc
archives generateSourcesJar
}
其中, generateSourcesJar
Task 中的 from sourceSets.main.java.srcDirs
需要根据项目实际源码目录填写。
同步之后,在 gradle
的任务列表中的 jar
分组下就可以看到 generateSourcesJar
和 generateJavadoc
两个任务了。
双击这两个任务,sources.jar
和 javadoc.jar
就会生成,位置在 build/libs
目录下。
使用Kotlin开发的Android项目
在 Root Project 下的 build.gradle
文件中 buildscript
下的 dependencies
中添加:
classpath 'org.jetbrains.dokka:dokka-android-gradle-plugin:0.9.15'
在 module 下的 build.gradle
文件中添加:
apply plugin: 'org.jetbrains.dokka-android'
task generateSourcesJar(type: Jar) {
group = 'jar'
from android.sourceSets.main.java.srcDirs
classifier = 'sources'
}
task javadoc(type: Javadoc) {
source = android.sourceSets.main.java.srcDirs
classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
}
task dokkaJavadoc(type: org.jetbrains.dokka.gradle.DokkaTask) {
outputFormat = "javadoc"
outputDirectory = javadoc.destinationDir
}
task generateJavadoc(type: Jar, dependsOn: dokkaJavadoc) {
group = 'jar'
classifier = 'javadoc'
from javadoc.destinationDir
}
artifacts {
archives generateJavadoc
archives generateSourcesJar
}
其中, generateSourcesJar
Task 和 javadoc
Task 中的 sourceSets.main.java.srcDirs
需要根据项目实际源码目录填写。
同步之后,在 gradle
的任务列表中的 jar
分组下就可以看到 generateSourcesJar
和 generateJavadoc
两个任务了。
双击这两个任务,sources.jar
和 javadoc.jar
就会生成,位置在 build/libs
目录下。