You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决Android Studio生成Javadoc时出现的“module not found: kotlin.stdlib”或依赖缺失问题

如何解决Android Studio生成Javadoc时出现的“module not found: kotlin.stdlib”或依赖缺失问题

你遇到的这个问题在混合了Kotlin依赖的Java Android项目里挺常见的——Android Studio自带的Javadoc UI工具在处理依赖和模块规则时容易踩坑,我给你分享两个亲测有效的解决办法:

方法一:用Gradle自定义Javadoc任务(推荐,更稳定)

Android Studio的Javadoc UI经常在依赖处理上出问题,用Gradle任务能精准控制所有路径和规则,步骤如下:

  1. 打开app模块下的build.gradle文件(注意是app模块的,不是项目根目录的那个)
  2. 在android代码块的外部,添加以下Gradle配置:
task generateJavadoc(type: Javadoc) {
    // 指定要生成Javadoc的Java源码目录
    source = android.sourceSets.main.java.srcDirs
    // 加入Android SDK核心类路径,解决android.os等基础包找不到的问题
    classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
    // 加入项目的所有依赖类路径
    classpath += configurations.implementation
    // 排除Kotlin相关源码和module-info文件,避免模块找不到的错误
    exclude '**/kotlin/**'
    exclude '**/module-info.java'
    // 设置Javadoc输出目录,可根据自己需求修改
    destinationDir = file("$projectDir/docs/javadoc")
    // 可选配置:编码格式和显示的成员级别(这里设为PROTECTED,会包含public和protected成员)
    options.encoding = 'UTF-8'
    options.memberLevel = JavadocMemberLevel.PROTECTED
}
  1. 点击右上角的「Sync Now」同步Gradle配置
  2. 运行任务:打开右侧Gradle面板 → 找到app模块 → 展开Tasks → 展开documentation → 双击generateJavadoc

任务跑完后,你就能在指定的输出目录里看到生成好的Javadoc了。这个方法完全避开了Android Studio UI的依赖处理bug,直接通过Gradle精准控制所有参数。

方法二:调整Android Studio Javadoc UI参数(适合不想改Gradle的场景)

如果你坚持要用Android Studio自带的Generate Javadoc对话框,按以下步骤操作:

  1. 打开Tools → Generate Javadoc...
  2. 取消勾选Include JDK and library sources in -sourcepath(这个选项就是触发Kotlin模块错误的原因)
  3. 滚动到对话框底部,在Other command line arguments里添加以下参数(注意Windows系统用分号;分隔路径,Mac/Linux用冒号:):
-classpath "${android.getBootClasspath().join(';')};${configurations.implementation.asPath}" -exclude "**/kotlin/**" -exclude "**/module-info.java"
  1. 按需求设置输出目录、要生成Javadoc的类/包,最后点击OK生成

这个方法的原理和Gradle任务一致:手动指定Android核心类路径解决基础包缺失问题,同时排除Kotlin相关文件避免模块错误。

问题根源解释

你遇到的矛盾其实是两个问题叠加:

  • 勾选「Include JDK and library sources」时,Javadoc工具会尝试解析Kotlin依赖源码里的module-info.java,但当前环境没配置Kotlin模块路径,所以报“module not found”
  • 不勾选该选项时,Android Studio默认的classpath没包含Android SDK核心类,导致找不到android.os这类基础包

上面的两个方法都是通过明确指定Android核心类路径+排除Kotlin模块相关文件,同时解决了这两个矛盾点。

备注:内容来源于stack exchange,提问作者Mattin GUIHENEUF

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.13 20:05:30