如何让gradle javadoc插件honor lombok处理?

How to make gradle javadoc plugin honor lombok processing?

我有一个标准的 gradle java 项目并且我使用 lombok。我的 class 之一有

@NoArgsConstructor(access = AccessLevel.PACKAGE) 

但是当我 运行 ./gradlew javadoc 时,报告的可见度是 public。是否有任何 smart/fast 方式或我是否必须 运行 delombok 和 运行 javadoc on delmbokked 来源?以及如何使用 gradle?

gradle 3.3,龙目岛 1.16.14

do i have to run delombok and run javadoc on delombokked sources?

我已经看到人们在使用 lombokked 项目时抱怨 JavaDocs 不完整,所以如果 delombokking 解决了您的问题并且这样做没有障碍,那么它可能就是您的解决方案。

and how to do it with gradle

这里是 delombok 和 javadoc 作业的 gradle 个任务:

task delombok(type: DelombokTask, dependsOn: compileJava) {
    ext.outputDir = file("$buildDir/delombok")
    outputs.dir(outputDir)
    sourceSets.main.java.srcDirs.each { 
        inputs.dir(it)
        args(it, "-d", outputDir)
    }
}

javadoc {
    dependsOn delombok
    source = delombok.outputDir
    failOnError = false
}

来源: