我正在一个具有许多类路径依赖项的项目中运行带有最新Gradle版本(v4.6)的构建。我明白了:
将注释处理器放在编译类路径上 已弃用,计划在Gradle 5.0中删除。请加 它们改为处理器路径。
如何找到违规的依赖关系(以合理的方式)?
答案 0 :(得分:1)
到目前为止,我发现的最好的方法是将以下代码自己添加到构建脚本中:
tasks.withType(JavaCompile) {
doFirst {
effectiveAnnotationProcessorPath.each { maybeJar ->
if (maybeJar.file) {
println "Doing: " + maybeJar.name
zipTree(maybeJar).matching {
include 'META-INF/services/javax.annotation.processing.Processor'
} each {
processorConfigFile ->
println "Annotation processor(s) found in $maybeJar.name:"
println processorConfigFile.filterLine { it =~ /^(?!#)/ }
}
}
}
}
}