2
我在一個持續集成服務器上設置了幾個項目,其中一些我沒有訪問權限來更改源代碼,服務器是一個linux盒子,我正在運行進入Maven編碼需要更改爲UTF8才能在盒子上編譯的問題。由於我無權修改pom文件,因此我想知道我是否可以將編譯器選項作爲命令行參數傳遞?該項目使用maven編譯器2.0,我試着通過-Denconding = UTF8沒有成功。從命令行傳遞Maven編譯器選項
我在一個持續集成服務器上設置了幾個項目,其中一些我沒有訪問權限來更改源代碼,服務器是一個linux盒子,我正在運行進入Maven編碼需要更改爲UTF8才能在盒子上編譯的問題。由於我無權修改pom文件,因此我想知道我是否可以將編譯器選項作爲命令行參數傳遞?該項目使用maven編譯器2.0,我試着通過-Denconding = UTF8沒有成功。從命令行傳遞Maven編譯器選項
您可以使用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
這不起作用。在你參考的鏈接中提到,它可用於Maven編譯器插件從2.1開始,正如我上面所說的,POM使用2.0 – shipmaster 2010-07-01 21:05:14
我會接受答案,因爲它看起來不像是有一種方法可以使用舊的編譯器插件:( – shipmaster 2010-07-06 16:20:59