从命令行传递Maven编译器选项

shi*_*ter 3 java command-line maven-2

我在一个持续集成服务器上设置了几个项目,其中一些我没有权限将源代码更改为,服务器是一个linux盒子,我遇到了一个需要将maven编码更改为UTF8的问题能够在盒子上编译.由于我无权修改pom文件,我想知道我是否可以将编译器选项作为命令行参数传递?该项目使用maven编译器2.0,我尝试传递-Denconding = UTF8但没有成功.

api*_*iri 5

您可以使用Maven属性"project.build.sourceEncoding".

因此,有些事情 mvn clean install -Dproject.build.sourceEncoding=UTF-8应该能够实现你所需要的.

这相当于

<properties>
   <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
Run Code Online (Sandbox Code Playgroud)

在你的pom.xml中.

编辑:作为参考点,有源链接文件编码的以下链接可用POM元素显示Maven 2.0和3.0的这些属性之间的细微差别