2017-06-21 43 views
1

我RAM運行到問題,即我的應用程序拋出每當我使用此命令clean cobertura:cobertura產生cobertura report PermGen的尺寸誤差。 >首選項 - - > Java的 - 先進入Windows在JDK VM argumemts sts.ini PermGen的尺寸誤差而產生的Cobertura報告

  • 增加PermGen的大小

    • 增加PermGen的大小>已安裝的JRE:我嘗試了幾乎所有的東西,如以下 - >點擊JDK - >編輯,然後在VM ARGS

    • 增加PermGen的大小maven.bat文件

    • 一些在StackOverflow的建議提保命插件的版本,我有一個已經到位
    • 012上述的

    沒有幫助我。我在JUnit測試用例中使用了很多Mock/PowerMock對象。 Maven測試運行得很好。

    我該如何解決這個問題?

    感謝

  • 回答

    1

    既然你試圖改變sts.ini,我假設你是從內部STS運行它。即使當Maven被STS啓動時,它也會與STS分開運行,因此更改sts.ini並不會起作用。您需要在mvn作業的運行配置中將MAVEN_OPTS設置爲增加的permgen大小。

    +0

    你是正確的,改變它,我意識到你所說的,它是不是要去工作。你是否認爲cobertura:cobertura工作我應該增加尺寸? – Mike

    +0

    是的。大概你在STS裏有一個運行配置來運行'mvn clean cobertura:cobertura'。該配置是您需要配置MAVEN_OPTS的地方。 – jingx

    +0

    它是否在VM參數下的JRE下? – Mike

    1

    設置MAVEN_OPTS。

    值將是:-Xms1024m -Xmx3000m -XX:MaxPermSize參數=1024米

    export MAVEN_OPTS="-Xms1024m -Xmx3000m -XX:MaxPermSize=1024m" //unix 
    
    set MAVEN_OPTS="-Xms1024m -Xmx3000m -XX:MaxPermSize=1024m" //window