Android Studio生成Javadoc提示Cannot find symbol错误怎么解决?
Android应用模块Javadoc生成报错解决方案
错误原因说明
- 找不到
android.Manifest、android.compat.annotation等系统/依赖包符号:Javadoc任务默认未将Android SDK类路径、项目依赖类路径加入编译上下文 - 同步时报
libraryVariants未知属性:你当前使用的是应用模块(com.android.application插件),libraryVariants仅适用于库模块(com.android.library插件),应用模块需使用applicationVariants
完整配置方案
在模块级build.gradle文件(通常是app目录下的build.gradle)中添加如下配置:
task javadoc(type: Javadoc) { // 指定源码路径 source = android.sourceSets.main.java.srcDirs // 引入Android SDK引导类路径 classpath += project.files(android.getBootClasspath().join(File.pathSeparator)) // 排除自动生成的类,避免无效报错 exclude '**/R.java', '**/R2.java', '**/BuildConfig.java', '**/Manifest*.java' // 配置编码与忽略语法警告,避免非关键错误阻塞生成 options.encoding = "UTF-8" options.addStringOption('Xdoclint:none', '-quiet') } afterEvaluate { // 应用模块使用applicationVariants引入项目依赖类路径 javadoc.classpath += files(android.applicationVariants.collect { variant -> variant.javaCompileProvider.get().classpath.files }) }
生成操作
配置同步完成后,可任选一种方式生成:
- Gradle任务生成:右侧Gradle面板 → 对应模块 → Tasks → documentation → 双击
javadoc执行,生成的文档默认存放在模块的build/docs/javadoc目录下 - 菜单生成:点击
Tools → Generate → JavaDoc,在弹窗的「Other command line arguments」输入框中填入-encoding UTF-8 -charSet UTF-8 -Xdoclint:none,选择对应生成范围即可
可选补充
如果仍有兼容注解类找不到的问题,确认模块依赖中已引入AndroidX注解依赖:
dependencies { implementation 'androidx.annotation:annotation:1.6.0' }
内容的提问来源于stack exchange,提问作者Nono
相关产品推荐
相关产品推荐

