[英]Received Java was started but returned exit code=13 error when starting STS on 64-bit machine
[英]PermGen space error received when starting an application with Java 64 bit
我有一個Eclipse(基於插件)應用程序,我嘗試從jnlp文件中以Java 64bit開始(我使用maven tycho來構建它)。 啟動應用程序后不久,它不再響應,有時甚至自動關閉。 如果使用Java 32位啟動應用程序,則該應用程序可以正常運行。
如果檢查日志文件,則會收到java.lang.OutOfMemoryError:PermGen空間異常。 我已經將MaxPermSize增加到756m,但仍然無法正常工作。 我可以看到,當應用程序被阻止時,CPU的使用率幾乎達到了100%。
如果您對我可以解決的問題有任何建議或解釋,請分享。
謝謝!
當您加載許多類時,燙發空間將被填充。
通過此常見問題解答 :
我如何確定永久性一代是否正在填補?
從1.4.2開始-XX:+ PrintGCDetails將打印有關在每個垃圾收集處收集的堆的所有部分的信息。 完整的收藏
[完整GC [使用期限:30437K-> 33739K(280576K),0.7050569秒] 106231K-> 33739K(362112K),[彼爾姆:2919K-> 2919K(16384K)],0.7052334秒]
此示例顯示永久代中的收集很少(從收集前使用的2919K到收集后使用的2919K),並且永久代的當前大小為16384K。
對我來說,解決方案是更改為Java 1.7。 我以前曾嘗試使用Java 1.6.0_26_x64和Java 1.6.0_29_x64並得到上述錯誤。
我現在已更改為Java 1.7.0_04_x64,它可以流暢運行,而絲毫不阻塞。
編輯:它也適用於Java 1.6.0_33。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.