繁体   English   中英

如何从gradle javadoc任务中排除生成的文件?

[英]How to exclude generated files from gradle javadoc task?

我通过第三方插件在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

问题是您的模式引用了源目录的路径。

Javadoc模式与类的包匹配。

所以你需要使用一个引用你需要排除的包的模式,例如:

exclude 'com/app/com4j/api/**'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM