5

我正在尝试将我的库的新版本上传到 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检查?)

4

3 回答 3

8

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

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

从这个关于 GitHub 问题的评论中找到了答案- 您还可以查看解决该问题的 GitHub 提交

于 2016-03-27T21:36:37.417 回答
6

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

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

到你的build.gradle

于 2017-07-29T12:20:15.293 回答
2

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

于 2016-01-21T08:00:33.563 回答