天天看點

Maven+jetty,記憶體溢出

系統運作在MAVEN中的jetty插件下,當在ECLIPSE運 clean jetty:run時系統提示OutOfMemoryError: PermGen space。

解決辦法:

設定run as --->run configuragtions--->jre标簽下的屬性VM arguments:

-server -Xms512m -Xmx1024m -XX:PermSize=512m -XX:MaxPermSize=512m -XX:+CMSClassUnloadingEnabled -XX:+PrintGCDetails -Xloggc:%M2_HOME%/gc.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=%M2_HOME%/java_pid.hprof 
           

其中參數說明如下:

-XX:+CMSPermGenSweepingEnabled : 允許permgenspace的垃圾回收

-XX:+CMSClassUnloadingEnabled : allows the garbage collector to remove even classes from the memory

-XX:PermSize=256M -XX:MaxPermSize=256M : raises the amount of memory allocated to the permgenspace

解決失敗用例:

1.在系統環境變量中添加 MAVEN_OPTS="-Xms40m -Xmx512m -XX:PermSize=512m" 不行,

2.在eclipse.ini檔案中添加 -Xms40m -Xmx512m -XX:PermSize=512m 也不行。

3.run as --->run configuragtions--->jre标簽下的屬性VM arguments:

-Xms512m -Xmx1024m