啓動Eclipse之後,Mven似乎將編譯器設置設置爲1.5,並忘記所有其他全局代碼樣式設置以確保更高的代碼質量。Maven m2e強制執行自己的編譯器設置 - 禁用
有什麼方法可以禁用此功能嗎?或者我可以在我的POM中指定所有編譯器和代碼樣式檢查?
這是非常煩人的,因爲Ecplise無法運行應用程序,因爲不允許覆蓋接口的註釋。 Java compiler
- >Enable project specific settings
中的勾號始終在重新啓動後設置。
啓動Eclipse之後,Mven似乎將編譯器設置設置爲1.5,並忘記所有其他全局代碼樣式設置以確保更高的代碼質量。Maven m2e強制執行自己的編譯器設置 - 禁用
有什麼方法可以禁用此功能嗎?或者我可以在我的POM中指定所有編譯器和代碼樣式檢查?
這是非常煩人的,因爲Ecplise無法運行應用程序,因爲不允許覆蓋接口的註釋。 Java compiler
- >Enable project specific settings
中的勾號始終在重新啓動後設置。
您可以在您的pom中設置編譯器源和目標(字節代碼)版本。
見http://maven.apache.org/plugins/maven-compiler-plugin/examples/set-compiler-source-and-target.html
代碼風格檢查可以在POM被配置爲的行家報告的一部分,看到http://maven.apache.org/plugins/maven-checkstyle-plugin/
,但我不能肯定的整合是否會選擇這些了。
如果我可以關閉將java設置搞亂的maven,我會更開心。爲什麼必須始終將該勾號放入該框中? 1.5的默認值是可怕的。 – 2012-01-10 20:19:59
@FranzKafka,Maven專注於提供兼容的構建之一。如果您嘗試通過命令行或CI工具構建應用程序,他們會嘗試在1.5上構建它,因爲這是Maven的默認設置。如果您指定源/目標信息,m2e將使用正確的設置。 – deterb 2012-01-11 15:16:02
沒關係,雖然它也改變了Eclipse代碼風格檢查,但它們看似沒有改變。 – 2012-01-11 16:59:45
最簡單的方法是添加到您的POM
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
見default maven compiler setting另一個解決方案。
爲了補充這一點,請查看http://code.google.com/p/m2e-extensions/wiki/HomePage?tm=6,它提供了一些額外的質量控制插件,可以根據您的pom添加配置。 – deterb 2012-01-11 15:29:00
如果您不希望m2e eclipse插件與您的項目設置有關,請使用maven-eclipse-plugin's eclipse goal生成您的eclipse設置。
它會根據你的pom中的內容生成你的eclipse設置,所以你仍然需要在你的pom中設置maven編譯器設置,如果你不想每次重新生成時都設置它們eclipse項目文件,當你更新你的pom。
如果您看一下該插件的詳細配置,有關於如何生成各種eclipse元數據的說明。
您正在使用哪種支票? – deterb 2012-01-11 15:22:03
我將大多數編譯器檢查從忽略更改爲警告。 – 2012-01-11 17:00:51
對於編譯器檢查,只需將它們設置在工作區級別。 – deterb 2012-01-11 18:49:45