如何禁止显示 Gradle 7 中的'Execution optimizations have been disabled'警告?



升级到Gradle 7后,我有很多警告,如:

Execution optimizations have been disabled for task ':<...>:compileJava' to ensure correctness due to the following reasons:
- Gradle detected a problem with the following location: '<...>buildclassesmain'. Reason: Task ':<...>:compileJava' uses this output of task ':<...>:processResources' without declaring an explicit or implicit dependency. This can lead to incorrect results being produced, depending on what order the tasks are executed. 

原因:我将资源的输出重定向到与类文件相同的文件夹中—对于集成测试读取资源:

sourceSets {
main { 
output.resourcesDir = file("build/classes/main") 
java.outputDir = file("build/classes/main") 
}
test { 
output.resourcesDir = file("build/classes/test") 
java.outputDir = file("build/classes/test") 
}
}

如何抑制这些警告?

我没有找到一种方法来抑制特定的警告,就像我们说的只有弃用警告。

我在命令行中使用-q标志跳过这些警告。只是要注意,在这种情况下,所有的警告将被抑制。

示例:gradlew build -q

至少你应该创建任务来摆脱这种技术债务。但在此期间,您可以使用-q标志为您的构建,以避免这种额外的噪音。问题解决后,移除-q标志。

请注意,我还尝试使用——warning-mode none标志,该标志对弃用警告不起作用。

相关内容

  • 没有找到相关文章

最新更新