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

如何让Gradle的javadoc任务包含生成的源代码?

解决Gradle Javadoc无法识别生成源码链接的问题

你的问题根源在于:Gradle的javadoc任务默认只会扫描主源码集(比如src/main/java)的文件,不会自动包含注解处理器生成的build/generated/annotationProcessor/java/main目录下的源码,所以无法识别MyEntity_这类生成类的链接引用。

可以通过以下两种方式配置解决:

方式一:将生成目录加入源码集(推荐)

把生成的源码目录添加到main源码集里,这样javadoc会自动包含这些文件,同时也能让IDE的相关任务更一致。

Groovy DSL(build.gradle)

sourceSets {
    main {
        java {
            srcDirs += file("build/generated/annotationProcessor/java/main")
        }
    }
}

Kotlin DSL(build.gradle.kts)

sourceSets {
    main {
        java {
            srcDirs("build/generated/annotationProcessor/java/main")
        }
    }
}

如果需要处理test目录下的生成源码,对应修改sourceSets.test.java.srcDirs即可。

方式二:直接配置Javadoc任务

如果不想修改源码集,也可以直接给javadoc任务指定额外的源目录和类路径:

Groovy DSL

javadoc {
    // 添加生成的源码目录
    source += fileTree(dir: "build/generated/annotationProcessor/java/main")
    // 确保类路径包含生成类的编译输出
    classpath += sourceSets.main.output
}

Kotlin DSL

tasks.javadoc {
    source += fileTree("build/generated/annotationProcessor/java/main")
    classpath += sourceSets.main.get().output
}

配置完成后,重新执行gradle javadoc任务,就能正常识别指向生成源码的@link链接了。

内容的提问来源于stack exchange,提问作者Jin Kwon

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 11:17:06