1. 程式人生 > >maven亂碼解決和配置

maven亂碼解決和配置

Windows環境中

找到檔案%M2_HOME%\bin\mvn.bat ,這就是啟動Maven的指令碼檔案,在該檔案中你能看到有一行註釋為:

  @REM set MAVEN_OPTS=-Xdebug -Xnoagent -Djava.compiler=NONE...

它的意思是你可以設定一些Maven引數,我們就在註釋下面加入一行:
set MAVEN_OPTS= -Xms128m -Xmx512m

之後,當你執行Maven命令如 mvn -version 的時候,你會看到如下的輸出:
E:\test>mvn -version

E:\test>set MAVEN_OPTS= -Xms128m -Xmx512m
Maven version: 2.0.9
Java version: 1.6.0_07
OS name: "windows 2003" version: "5.2" arch: "x86" Family: "windows"

我們看到,配置的Maven選項生效了,OutOfMemoryError也能得以相應的解決。

 
Linux環境中

也可以通過設定環境變數解決該問題, 如,編輯檔案 /etc/profile 如下
MAVEN_OPTS=-Xmx512m
export JAVA_HOME MAVEN_HOME MAVEN_OPTS JAVA_BIN PATH CLASSPATH

 
如果你使用Hudson

用 Hudson + Maven做持續整合,並不幸也遇到了類似的錯誤,那麼上述兩種方式都將不再起作用了,因為Hudson使用自己的maven-agent來啟動Maven,不會去呼叫Maven的指令碼,自然相應的配置也就無效了。

好在Hudson也給為我們提供了配置點,在Hudson的專案配置頁面中,有一塊Build區域,這裡我們已經設定了Root Pom和Goals。注意該區域的右下角有一個"Advanced..."按鈕,點選會看到MAVEN_OPTS輸入框,這裡輸入"-Xmx512m"就 OK了。

 
m2eclipse中

類似以上的方法都會失效,所幸m2eclipse提供了配置點。步驟如下:

專案上右擊 -> Run As -> Run Configurations -> Maven Build 上右擊 -> New

這時會看到一個maven執行配置對話方塊,這裡面其它的配置我不多解釋了,為了解決記憶體溢位的問題,我們可以選擇第二個TAB: JRE,然後在VM arguments中輸入配置如:-Xms128m -Xmx512m。

轉自:http://blog.csdn.net/yaowj2/article/details/6839077