首次運行公司項目,出現了內存溢出,具體出現java.lang.OutOfMemoryError: PermGen space和java.lang.OutOfMemoryError:GC overhead limit exceeded異常
調整運行時JVM內存大小主要有兩種方式:
1,在Eclipse中配置
Eclipse中的Window-->Preferences-->Java-->Installed JREs-->Edit,在Default VM arguments中配置如下 參數
-Xms1024m -Xmx2048m -XX:PermSize=256M -XX:MaxNewSize=1024m -XX:MaxPermSize=512m
具體可配置的參數還有很多,此處僅設置了這幾個參數,有需要設置別的參數的同學,請自行添加即可。
2,在Tomcat的配置文件中配置
Tomcat分為安裝板(.exe)和解壓版(.zip,tar.zip,解壓即用無需安裝的),二者JVM參數的配置方式有區別,這里只介紹解壓版的JVM參數內存配置方式,安裝板的配置方式
不同,有興趣的同學可以自行查找。
打開Tomcat-->bin-->catalina.bat,在@echo off后的第一行加入 set JAVA_OPTS=-Xmx512m -Xms512m -XX:PermSize=256M -XX:MaxPermSize=512m 即可。
3,查看JVM參數是否設置成功
點擊jdk安裝目錄下bin目錄中的JVisualVM.exe,在“JVM參數”中可以查看具體配置。
4,注意!!!兩種配置方式的優先級是Eclipse的配置優先級高於Tomcat,所以,在配置的時候,只需要選擇一種方式配置即可,兩種方式都使用的話,項目啟動時默認使用Eclipse
中的配置。