eclips內存調整

版權聲明:本文爲博主原創文章,未經博主允許不得轉載。

-Xms64m -Xmx128m

Eclipse 中設置JVM 內存

今天在eclipse 中測試把文檔轉換爲圖片的時候,報出了下面的錯誤:

Java.lang.OutOfMemoryError: Java heap space

    從上邊的異常信息可以看到,JVM 需要使用的內存已經超過了我們分配給虛擬機可以使用的最大內存。所以問題就轉化爲如何設置eclipse jvm 的最大內存。

一、    嘗試修改Eclipse.ini 文件 (此方法不行)

找到eclipse 目錄下的eclipse.ini 文件,修改下面的內容:

-Xms40m

-Xmx512m

修改後重啓eclipse ,發現根本不起作用。經過後來查閱一些資料,原來這裏設置的最小內存和最大內存是不是給JVM 使用的,這個內存值包含了eclipse 自身使用的內存。

二、    修改jdk 使用內存(此方法可行)

找到eclispe window->preferences->Java->Installed JRE ,點擊右側的Edit 按鈕,在編輯界面中的 “Default VM Arguments ”選項中,填入如下值即可。

-Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m

 

修改TOMCAT_HOME/bin/catalina.sh(linux系統下start.sh會調用它來啓動tomcat,windows下調用catalina.bat,修改類似)

在文件頭部註釋後加入
JAVA_OPTS='-Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m'

 

 

三、    修改Run Configurations (此方法可行)

代碼上右鍵,依次點擊“Run As ”-> “Run Configurations ”,在Arguments 參數中的“VM arguments: ”中填入如下值即可。

-Xms64m -Xmx128m

 

 

四、    查詢當前JVM 內存代碼

下面是查詢當前JVM 內存大小的代碼,可以測試以上設置後JVM 的內存是否會變化。增加JVM 內存的配置項後,無需重新啓動eclipse 。具體的代碼如下:

public class TestMemory {

 

    /**

      * @param args

      */

    public static void main(String[] args) {

       System. out .println( " 內存信息 :" + toMemoryInfo());

    }

 

    /**

      * 獲取當前 jvm 的內存信息

      *

      * @return

      */

    public static String toMemoryInfo() {

 

       Runtime currRuntime = Runtime.getRuntime ();

       int nFreeMemory = ( int ) (currRuntime.freeMemory() / 1024 / 1024);

       int nTotalMemory = ( int ) (currRuntime.totalMemory() / 1024 / 1024);

       return nFreeMemory + "M/" + nTotalMemory +"M(free/total)" ;

    }

}

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章