2010-07-01 36 views
2

我在一个持续集成服务器上设置了几个项目,其中一些我没有访问权限来更改源代码,服务器是一个linux盒子,我正在运行进入Maven编码需要更改为UTF8才能在盒子上编译的问题。由于我无权修改pom文件,因此我想知道我是否可以将编译器选项作为命令行参数传递?该项目使用maven编译器2.0,我试着通过-Denconding = UTF8没有成功。从命令行传递Maven编译器选项

回答

5

您可以使用Maven属性“project.build.sourceEncoding”。

因此,沿着 mvn clean install -Dproject.build.sourceEncoding=UTF-8应该完成你所需要的东西。

这是在你的pom.xml的

<properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
</properties> 

等同。

编辑:作为一个参考点,存在可用POM Element for Source File Encoding下面的链接表示这些属性之间的细微差别两个Maven的2.0和3.0

+0

这不起作用。在你参考的链接中提到,它可用于Maven编译器插件从2.1开始,正如我上面所说的,POM使用2.0 – shipmaster 2010-07-01 21:05:14

+0

我会接受答案,因为它看起来不像是有一种方法可以使用旧的编译器插件:( – shipmaster 2010-07-06 16:20:59