關於Tomcat下PermGen space 警告的解決方法
阿新 • • 發佈:2019-01-25
最近由於需求,自己重新構建了框架。可是發現通過Myeclipse啟動Tomcat,如果訪問靜態頁面還好,如果訪問jsp動態頁面,則會出現PermGen space的警告。網上查了沒有解決問題,懷疑自己是C3p0連線池配置錯誤了,檢查了下,也沒有錯誤。
後來看到有兩種解決方案。一種方案是修改tomcat/bin/catalina.bat(windows使用者),在rem ----- Execute The Requested Command ---------------------------------------這段文字下方加入這個。
set JAVA_OPTS=%JAVA_OPTS% -Xms256m -Xmx1024m -XX:PermSize=256M -XX:MaxNewSize=256m -XX:MaxPermSize=512m。可是加入了之後通過Myeclipse啟動Tomcat時候,還是錯誤依舊。不明白了。忽然看見網上有人推薦用Jconsole工具。沒用過,第一次聽說。就cmd下輸入jconsole.exe回車,豁然開朗,選擇連線。
選擇Perm gen 看下分配的記憶體。原來是沒有生效。然後開啟myeclipse的配置頁面。
在perm gen 中加入-Xms256m -Xmx512m -XX:PermSize=256m -XX:MaxPermSize=512m 就OK了。記得要選擇的是你當前用的Tomcat 的jdk哦。
ps:我一直以為兩種啟動方式差別不大。原來還有這麼一出。有擴充套件就會有問題。問題解決了就OK。