eclipse.ini內存設置


這兩天用eclipse,突然變得很卡,就上網找了些資料,對eclipse.ini啟動參數配置,整理如下:

1.先了解下JVM內存管理機制,JVM內存分為堆內存和非堆內存

2.JVM內存限制

首先JVM內存限制於實際的最大物理內存,假設物理內存無限大的話,JVM內存的最大值跟操作系統有很大的關系。簡單的說就 32位處理器雖然可控內存空間有4GB,但是具體的操作系統會給一個限制,這個限制一般是2GB-3GB(一般來說Windows系統下為1.5G- 2G,Linux系統下為2G-3G),而64bit以上的處理器就不會有限制了

3.示例:(具體情況,具體定吧)

-vmargs 
-Xms128M 
-Xmx512M 
-XX:PermSize=64M 
-XX:MaxPermSize=128M 

4.其他啟動參數設定:

如果你有一個雙核的CPU,可以嘗試這個參數

-XX:+UseParallelGC

讓GC可以更快的執行

 

-arch [processor architecture]
描述:指定所使用的處理器的類別
舉例:eclipse -arch x86或eclipse -arch sparc

 

-application [id]
描述:指定要運行的應用,id為擴展org.eclipse.core.applications擴展點的插件id加擴展id
舉例:例如有個插件id為edu.sdu.app,擴展id為myapp,則eclipse -application edu.sdu.app.myapp,就會執行你的擴展應用

 

-clean
描述:清空插件緩存內容
舉例:eclipse -clean,有時插件顯示不出來是因為Eclipse將插件進行了緩存以加速啟動過程,若指定此參數則會清空緩存,從頭加載

 

-configuration [cofigfile location]
描述:指定配置文件的位置,在啟動時使用此目錄下的配置文件config.ini來啟動
舉例:eclipse -configuration d:/eclipse/configuration

 

-data [workspace location]
描述:指定啟動時的Workspace位置
舉例:例如Workspace位置設在D:/myworkspace,則eclipse -data D:/myworkspace

 

-debug [option file]
描述:以Debug狀態啟動Eclipse,所有的Debug開關在.options文件中指定
舉例:eclipse -debug d:/eclipse/.options

 

-dev [classpath entry]
描述:以開發狀態啟動Eclipse,這會添加所有指定的路徑作為每個插件的Classpath

舉例:例如eclipse -dev bin,會將產生在bin目錄下的所有類加載到類路徑中,這在開發插件時非常有用

 

-nosplash
描述:指定啟動時不顯示閃屏
舉例:eclipse -nosplash

 

-vm [jre path]
描述:指定啟動時所使用的Java虛擬機
舉例:例如要使用自己的Java虛擬機,則eclipse -vm D:/j2sdk1.4.2_04/jre/bin/java.exe,這樣還有一個好處,就是可以開啟一個Console,能夠顯示控制台信息;當然若使用eclipse -vm D:/j2sdk1.4.2_04/jre/bin/javaw.exe則不會再顯示控制台

 

-vmargs [Java VM arguments]
描述:指定啟動時要使用的Java虛擬機參數
舉例:例如要指定使用的內存容量,則eclipse -vmargs "-Xms256m -Xmx1024m"
注:此參數一定要放在所有參數變量的最后面

 

5.FAQ:

為什么有的機器我將-Xmx和-XX:MaxPermSize都設置為512M之后Eclipse可以啟動,而有些機器無法啟動?

  通過上面對JVM內存管理的介紹我們已經了解到JVM內存包含兩種:堆內存和非堆內存,另外JVM最大內存首先取決於實際的物理內存和操作系統。所以說設置VM參數導致程序無法啟動主要有以下幾種原因:

  1) 參數中-Xms的值大於-Xmx,或者-XX:PermSize的值大於-XX:MaxPermSize; 

  2) -Xmx的值和-XX:MaxPermSize的總和超過了JVM內存的最大限制,比如當前操作系統最大內存限制,或者實際的物理內存等等。

  說到實際物理內存這里需要說明一點的是,如果你的內存是1024MB,但實際系統中用到的並不可能是1024MB,因為有一部分被硬件占用了

 

  如果有不正確的地方希望大家予以指出!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM