### 简介:
如果你是一个库开发者,那么必不可少的就是像对使用者提供sdk文档,这篇讲述使用gradle来构建javadoc文档
<!-- more -->
#### 准备
首先我们有一个自己的库模块,这里我新建一个library名叫mylibrary,然后在模块里创造一个类用于展示
<figure class="half">
<img src="/images/gradle_javadoc1.png">
<img src="/images/gradle_javadoc2.png">
</figure>
#### 新建一个task
我们在库模块下面新建一个gradle-javadoc.gradle文件用于存放javadoc相关task,并在模块的build.gradle中通过下面代码包含该文件
```
apply from: 'gradle-javadoc.gradle'
```
我们在gradle-javadoc文件中构建一个task,代码如下
```java
task javadoc(type: Javadoc) {
android.libraryVariants.all { variant ->
//javadoc生成时遇到错误继续执行
failOnError = false
//文档产生路径
destinationDir = new File(destinationDir, variant.baseName)
//指定源码文件
source = files(variant.javaCompile.source)
//用于解析源代码中的类型引用的类路径
classpath = files(variant.javaCompile.classpath.files) + files(android.bootClasspath)
//生成javadoc设置选项
options.windowTitle(" SDK $VERSION_NAME ")
//不包含R文件和BuildConfig文件
exclude '**/R.java','**/BuildConfig.java'
}
}
```
在上面的代码里,我们构建里一个叫做javadoc的task,并且指定代码路径以及产生文件路径
#### 执行task
任务构建完之后,当我们需要文档时,我们需要执行文件,在命令行输入下面命令,这里我是linux系统,window系统gradle命令不同
```
./gradlew javadoc
```
#### 浏览文档
我们在app/build 路径下会发现生成一个docs文件,我们找到该文件下的index.html文件,用浏览器打开,便可以浏览文档了
<figure class="half">
<img src="/images/gradle_javadoc3.png">
<img src="/images/gradle_javadoc4.png">
</figure>
#### 其它参数设置
| Property | 描述 |
| ------------- |------- |
| classpath |用于解析源代码中的类型引用的类路径 |
| destinationDir|生成文档的目录|
| excludes |排除文件 |
| executable |用于生成Javadoc的Javadoc可执行文件。如果为null,则使用当前JVM的Javadoc可执行文件。|
| failOnError |指定在Javadoc生成期间遇到错误时此任务是否失败。|
| includes |包含模式的集合。|
| maxMemory |分配给此任务的内存量。|
| options |Javadoc生成选项。|
| source |在包含和排除模式应用之后,此任务的来源。忽略不存在的源文件。|
| title |生成的文档的标题。|
| toolChain |将用于生成Javadoc的工具链。|
网友评论