我通过第三方插件在gradle构建中生成一些代码。 生成的代码javadoc格式不正确。
所以我试图从gradles javadoc任务中排除该路径,但它不起作用。 我查看了类似的问题,但没有一个提供有用的答案。
$> ./gradlew --version
------------------------------------------------------------
Gradle 4.3
------------------------------------------------------------
Build time: 2017-10-30 15:43:29 UTC
Revision: c684c202534c4138b51033b52d871939b8d38d72
Groovy: 2.4.12
Ant: Apache Ant(TM) version 1.9.6 compiled on June 29 2015
JVM: 1.8.0_121 (Oracle Corporation 25.121-b13)
OS: Windows 7 6.1 amd64
这是我的build.gradle
sourceSets {
main {
compileClasspath += java.srcDir("${buildDir}/generated/src/main/com4j")
runtimeClasspath += java.srcDir("${buildDir}/generated/src/main/com4j")
}
test {
compileClasspath += java.srcDir("${buildDir}/generated/src/main/com4j")
runtimeClasspath += java.srcDir("${buildDir}/generated/src/main/com4j")
}
}
javadoc {
exclude "**/generated/**"
source = sourceSets.main.allJava
}
无效。
$> ./gradlew javadoc
:javadocC:\cygwin64\home\username\sourcecode\COMJurer\build\generated\src\main\com4j\com\app\com4j\api\ClassFactory.java:15: warning: no @return
public static com.app.com4j.api.IAPI createAPI() {
^
C:\cygwin64\home\username\sourcecode\COMJurer\build\generated\src\main\com4j\com\app\com4j\api\IAPI.java:99: error: malformed HTML
* @param xmlReturn Mandatory Holder<java.lang.String> parameter.
^
C:\cygwin64\home\username\sourcecode\COMJurer\build\generated\src\main\com4j\com\app\com4j\api\IAPI.java:99: error: bad use of '>'
* @param xmlReturn Mandatory Holder<java.lang.String> parameter.
^
2 errors
1 warning
:javadoc FAILED
gradles文档缺少任何细节:https://docs.gradle.org/current/dsl/org.gradle.api.tasks.javadoc.Javadoc.html
答案 0 :(得分:6)
问题是您的模式是指源目录的路径。
Javadoc模式与类的包匹配。
所以你需要使用一个引用你需要排除的包的模式,例如:
exclude 'com/app/com4j/api/**'