我有一个使用Maven作为构建工具的大项目。它执行install
操作约30分钟。我决定搬到Gradle,因为它被认为是更快的建筑工具。但我在compileJava
任务面临一个问题,看起来像下一个:
[ERROR] [system.err] Note: /home/user/IdeaProjects/SomeClass.java uses or overrides a deprecated API.
在此类错误发生后,Gradle停止构建过程,但Maven成功完成了install
操作。
那么,我的问题是有办法摆脱这种Gradle行为吗?
默认情况下,Java编译器不会将弃用警告视为编译错误。 Gradle中的Java插件遵循相同的默认值,因此您必须对其进行配置才能执行此操作。简而言之,在你的构建中的某个地方,javac
可以选择-Werror
。
它可能看起来像:
compileJava {
options.compilerArgs += ['-Werror']
}
如果您不希望构建在编译器警告时失败,则需要从配置中删除此选项。