我正在尝试准备并将我的Android库上传到Bintray,并且该过程的一部分运行以下javadoc任务:
task javadoc(type: Javadoc) { source = android.sourceSets.main.java.srcDirs classpath += project.files(android.getBootClasspath().join(File.pathSeparator)) }
此任务是更大的gradle脚本的一部分:https://raw.githubusercontent.com/attwellBrian/JCenter/master/bintrayv1.gradle
当javadoc
任务运行时,会出现下列问题:
项目中的每个@NonNull和@Nullable注释报告错误"错误:找不到符号"
我为Android类编写的每个Javadoc引用,如{@link Toolbar},都报告错误"error:reference not found"
生成Javadoc时如何更正这些引用问题?
编辑 看起来并非所有Android类链接都会产生问题,它可能只是来自Android支持库的类(也就是注释的来源).是否需要特殊的东西才能链接到gradle依赖项中的源文件?
您还应该将所有依赖项添加到javadoc.classpath.试试这个:
task javadoc(type: Javadoc) { source = android.sourceSets.main.java.srcDirs classpath += project.files(android.getBootClasspath().join(File.pathSeparator)) } afterEvaluate { javadoc.classpath += files(android.libraryVariants.collect { variant -> variant.javaCompile.classpath.files }) }