2013-11-28 17 views
2

雖然試圖運行我的相對較小的應用程序,但我總是從堆空間內存錯誤中解脫出來。我在Gentoo上用8GB內存運行eclipse。Eclipse錯誤:java.lang.OutOfMemoryError:Java堆spac

這裏是我的eclipse.ini變化:

--launcher.XXMaxPermSize 
1024m 
-XX:MaxPermSize=2048m 
-Xms512m 
-Xmx8192m 

我的螞蟻外部工具定製JRE參數:

-Xms512m 
-Xmx8192m 

我還能做什麼?我不斷收到在Eclipse日誌:

!ENTRY com.android.ide.eclipse.adt 4 0 2013-11-28 18:54:55.503 
!MESSAGE Unable to execute dex: Java heap space 
!STACK 0 
java.lang.OutOfMemoryError: Java heap space 
    at java.util.BitSet.initWords(BitSet.java:164) 
    at java.util.BitSet.<init>(BitSet.java:159) 
    at com.android.dx.ssa.SsaMethod.bitSetFromLabelList(SsaMethod.java:137) 
    ... 
+0

如果我有太多的項目同時打開,有時會發生在我身上。你能關閉一些項目嗎? –

+0

您的MaxPermSize非常大。爲什麼你需要2G呢? – Jayan

+0

我有三個項目打開,所以我會嘗試關閉一些。而燙髮大小,我試圖增加只是爲了看看是否會有所幫助。 [編輯]關閉到2,我經常編輯。我還應該說明這兩個項目現在都出現了這個問題,過去這兩個項目都運行良好。我想不出最近發生的這個問題後,這個問題對我來說似乎是隨機的。 – Jeff

回答

0

不知道爲什麼,但我已通過刪除包含的Google API庫來解決此問題。我也刪除了android-support-v4庫,現在我的應用程序可以正常編譯。在我的構建路徑中,我現在只有android庫。

0

是8 GB的最大可用RAM? 如果是這樣,您是否嘗試減少Xmx?正如討論的here,這個邊界有一個原因。將其設置爲最大內存不會成爲其背後的意圖,並可能導致系統退化和其他惡意的事情。嘗試將Xmx設置爲2048之類的東西。如果您獲得了OOM,請慢慢往上走。即使是巨大的模型,我也從未分配過8GB。

如果這沒有幫助,你可以添加導致OOM的地方的代碼?

+0

我已經將Xmx設置爲1G,2G,4G和8G,以及嘗試1024/2048/4096/8192m出於挫折。 我會說這些錯誤發生: java.lang.OutOfMemoryError:Java堆空間, 未處理的事件循環異常, 無法執行dex:Java堆空間 – Jeff

相關問題