我们使用Gradle 2.1和java插件。在compileJava期间会发生不同的警告,例如:
warning: [options] bootstrap class path not set in conjunction with -source 1.7
Note: ../SomeClass.java uses or overrides a deprecated API.
我们知道他们的意思,但不会修复它们(不要问,其他线程:)是否有办法以某种方式避免这些消息?它们会大大扰乱输出:
:project1:compileJava
warning: [options] bootstrap class path not set in conjunction with -source 1.7
Note: SomeClass.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
1 warning
:project1:processResources
:project1:classes
:project1:jar
:project2:compileJava
warning: [options] bootstrap class path not set in conjunction with -source 1.7
1 warning
:project2:processResources
:project2:classes
:project2:jar
:project2:war
例如,在compileJava期间是否可以重定向stderr流,以便我们可以发出警告? 或者还有另一种方式吗?
答案 0 :(得分:7)
试试这个:
tasks.withType(JavaCompile) {
options.warnings = false
}
答案 1 :(得分:2)
尝试添加:
options.compilerArgs += '-Xlint:-deprecation'
答案 2 :(得分:2)
到目前为止尚未发布当前有效的答案(Gradle 4.0.1),所以这里有什么工作:
options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
答案 3 :(得分:0)
我认为这确实取决于警告。对于我收到的警告,此方法有效:
tasks.withType(JavaCompile) {
options.compilerArgs += ["-nowarn", "-XDenableSunApiLintControl"]
}
恢复健康。