原來一直用eclipse3.5,最近嘗試升級到3.7和4.2,但不管是3.7還是4.2項目編譯過程中總提示“Unhandled event loop exception PermGen space”要求退出workspace,與原來3.5版本比較了一下eclipse.ini參數設置發現沒有差別,懷疑是公司自己開發的插件問題,馬上刪除自己的插件,但還是遇到同樣問題,郁悶只好去google求助。
搜索到的第一個解決方案是設置PermSize和MaxPermSize參數,避免耗光永久保存區內存,如:
-XX:PermSize=128M -XX:MaxPermSize=128M
更改後重新編譯仍然報錯,郁悶,沒有解決問題,嘗試調大到256M還是出現同樣錯誤。
繼續Google,找到一個看似可疑的解決方案:“不許更改eclipse.exe的文件名”。因為多個版本,所以自己將3.7版命名為eclipse37,4.2版命名為eclipse42,而原來的3.5版本保留eclipse名稱,難道真是這樣的問題?死馬當活馬醫,試試看再說,於是將3.5版本更改為eclipse35,而4.2版本更改為eclipse,然後用4.2版本進行編譯,問題既然解決了,有點意外,馬上用同樣的方法試試3.7版本,問題果真沒再出現了。
eclipse對名字太較真了,為了捍衛版權,什麼都可以做,無語!
出處:http://stevex.blog.51cto.com/4300375/994544