为 Bintray 上传禁用 javadoc 检查

Disable javadoc check for Bintray upload

我正在尝试将我的库的新版本上传到 Bintray,但是出现错误。

我所做的其中一项更改是向我的 Javadoc 添加自定义属性。例如:

/**
 * The method does something.
 *
 * @param myParameter This is my parameter
 * @see #anotherMethod(int)
 * @attr ref R.styleable#MyLibrary_anAttribute
 */

我添加的自定义属性标签是 @attr ref,它会在生成 Javadoc HTML 时显示相关的 XML 属性(如 Android 开发人员文档)。我在我的 IDE (Android Studio) 中将其添加为自定义标签,但在上传到 Bintray 时会导致错误。另外,我正在 使用 novoda bintray 插件 - 这是我的 build.gradle.

的一部分
apply plugin: 'com.android.library'
apply plugin: 'com.novoda.bintray-release'

...

publish {
    ...
}

所以当我 运行 在终端中输入以下命令时:

gradlew bintrayUpload -PbintrayUser=me -PbintrayKey=key -PdryRun=false

我收到以下错误:

:mylibrary:compileDebugJavaWithJavac UP-TO-DATE      
:mylibrary:mavenAndroidJavadocs
C:\Users\...\ALibraryFile.java:216: error: unknown tag: attr
 * @attr ref R.styleable#MyLibrary_anAttribute

...

13 errors                                             
:mylibrary:mavenAndroidJavadocs FAILED          

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':mylibrary:mavenAndroidJavadocs'.
> Javadoc generation failed. Generated Javadoc options file (useful for troubleshooting): 'C:\Users\...\build\tmp\mavenAndroidJavadocs\javadoc.options'

* Try:        
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED  

Total time: 12.711 secs

有什么办法解决这个问题(例如禁用这个 javadoc 检查?)?

Javadoc 工件是默认 Maven 发布创建的工件之一,由插件创建。
插件 documentation 解释了如何创建自定义发布。您可以使用此选项来创建不包含 javadoc 工件或更改 Javadoc 生成方式的自定义发布。

我通过将以下内容添加到我的项目 build.gradle 中来解决我的问题:

allprojects {
    tasks.withType(Javadoc) {
        options.addStringOption('Xdoclint:none', '-quiet')
        options.addStringOption('encoding', 'UTF-8')
    }
}

我找到了答案 from this comment on a GitHub issue - you can also view the GitHub commit that resolved the issue

我认为这不是最好的方法,但它对我有用。添加

    tasks.withType(Javadoc).all {
    enabled = false
    }

给你的build.gradle.