如何使用 Xlint 编译 Maven 项目
2022-09-03 03:24:14
有没有办法将带有命令行的编译器参数传递给Maven?我知道我可以在 中指定它,但我也想从命令行运行。所以我尝试了类似的东西compiler-plugin
Xlint
mvn clean install -DskipTests=true -DcompilerArgument=-Xlint:deprecation
但没有成功。
有没有办法将带有命令行的编译器参数传递给Maven?我知道我可以在 中指定它,但我也想从命令行运行。所以我尝试了类似的东西compiler-plugin
Xlint
mvn clean install -DskipTests=true -DcompilerArgument=-Xlint:deprecation
但没有成功。
对于这个具体情况(弃用警告),实际上有一个可以从命令行使用的属性:
mvn clean install -Dmaven.compiler.showDeprecation=true
与编译器算法解决方案相反,这在 maven 进程中使用编译器时也有效,而不仅仅是在使用 fork=true 时。
一个类似有用的属性是 。maven.compiler.showWarnings
您可以定义一个编译器插件,如下所示:
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerArgument>${compilerArgument}</compilerArgument>
</configuration>
</plugin>
然后从命令行传递参数:
mvn -DcompilerArgument=-Xlint:deprecation compile
如果你不通过,它不会破坏构建,因为编译器插件参数中的“compilerArgument”将为空并被忽略。-DcompilerArgument