Eclipseçå¯å¨ç±$ECLIPSE_HOME/eclipse.iniæ§å¶ï¼å¦æ$ECLIPSE_HOME 没æ被å®ä¹ï¼åEclipseå®è£
ç®å½ä¸çé»è®¤eclipse.iniä¼çæã
eclipse.iniæ¯ä¸ä¸ªææ¬æ件ï¼å
¶å
容ç¸å½äºå¨Eclipseè¿è¡æ¶æ·»å å° Eclipse.exeä¹åçå½ä»¤è¡åæ°ã
å
¶æ ¼å¼è¦æ±ï¼
1ï¼ææçé项åå
¶ç¸å
³çåæ°å¿
é¡»å¨åç¬çä¸è¡ä¹å
2ï¼ææå¨-vmargsä¹åçåæ°å°ä¼è¢«ä¼ è¾ç»JVMï¼ææå¦æææ对Eclipse 设置çåæ°å¿
é¡»åå¨-vmargsä¹åï¼å°±å¦åä½ å¨å½ä»¤è¡ä¸ä½¿ç¨è¿äºåæ°ä¸æ ·ï¼
é»è®¤æ
åµä¸ï¼eclipse.iniçå
容å¦ä¸ï¼
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vmargs
-Xms40m
-Xmx256m
ä¸é¢çé
置表示å 空é´åå§å¤§å°ä¸º40Mï¼æ大为256Mï¼PermGenæ大为256Mã
æå®èææº
å»ºè®®ä½ ä½¿ç¨eclipse.iniæ¥æå®ä¸ä¸ªç¡®å®çJVMï¼èä¸æ¯ä½¿ç¨é»è®¤çæ
åµï¼å 为å¾å¤æ
åµä¸ä½ æ æ³ç¡®è®¤ä½ çEclipseå°åºä½¿ç¨çä½ æºå¨ä¸å®è£
çåªä¸ªJVMï¼ä½¿ç¨eclipse.iniæ¥æå®ä½¿å¾ä½ è½æå®å¹¶ç¡®è®¤ä¹ã
ä¸é¢çä¾åå°å±ç¤ºå¦ä½æ£ç¡®çä½¿ç¨ -vmé项
注æ-vmé项çæ ¼å¼æä¸¥æ ¼çè¦æ±ï¼
1ï¼-vmé项åå®çå¼ï¼è·¯å¾ï¼å¿
é¡»å¨åç¬çä¸è¡
2ï¼å
¶å¼å¿
é¡»ä¸¥æ ¼å°æåJavaå¯æ§è¡æ件ï¼èä¸ä»
ä»
åªæ¯Java homeç®å½ã
3ï¼-vmé项å¿
é¡»å¨-vmargsé项ä¹åï¼ä¹åå·²ç»è¯´è¿ï¼ææå¨-vmargsä¹åçé项å°ä¼ç´æ¥è¢«ä¼ éç»JVM
Windows Example
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vm
C:\Java\JDK\1.5\bin\javaw.exe
-vmargs
-Xms40m
-Xmx512m
Linux Example
å¨Linuxæä½ç³»ç»ä¸ï¼æ ¼å¼åWindowsä¸å¾ç±»ä¼¼
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vm
/opt/sun-jdk-1.6.0.02/bin/java
-vmargs
-Xms40m
-Xmx512m
Mac OS X Example
æå®Java 6:
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vm
/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/bin/java
-vmargs
-Xms40m
-Xmx512m
å (Heap)åéå (Non-heap)å
å
æç
§å®æ¹ç说æ³ï¼âJavaèææºå
·æä¸ä¸ªå ï¼å æ¯è¿è¡æ¶æ°æ®åºåï¼ææç±»å®ä¾åæ°ç»çå
ååä»æ¤å¤åé
ãå æ¯å¨ Java
èææºå¯å¨æ¶å建çãââå¨JVMä¸å ä¹å¤çå
å称为éå å
å(Non-heap memory)âãå¯ä»¥çåºJVM主è¦ç®¡ç两ç§ç±»åçå
åï¼å åéå ã
ç®åæ¥è¯´å å°±æ¯Java代ç å¯åçå
åï¼æ¯çç»å¼å人å使ç¨çï¼
éå å°±æ¯JVMçç»èªå·±ç¨çï¼æ以æ¹æ³åºãJVMå
é¨å¤çæä¼åæéçå
å(å¦JITç¼è¯åç代ç ç¼å)ãæ¯ä¸ªç±»ç»æ(å¦è¿è¡æ¶å¸¸æ°æ± ãå段åæ¹æ³æ°æ®)以åæ¹æ³åæé æ¹æ³
ç代ç é½å¨éå å
åä¸ã
å å
ååé
ï¼
JVMåå§åé
çå
åç±-Xmsæå®ï¼é»è®¤æ¯ç©çå
åç1/64ï¼
JVMæ大åé
çå
åç±-Xmxæå®ï¼é»è®¤æ¯ç©çå
åç1/4ã
é»è®¤ç©ºä½å å
åå°äº40%æ¶ï¼JVMå°±ä¼å¢å¤§å ç´å°-Xmxçæ大éå¶ï¼
空ä½å å
å大äº70%æ¶ï¼JVMä¼åå°å ç´å°-Xmsçæå°éå¶ã
å æ¤æå¡å¨ä¸è¬è®¾ç½®-Xmsã-Xmxç¸ç以é¿å
å¨æ¯æ¬¡GC åè°æ´å ç大å°ã
éå å
ååé
ï¼
JVM使ç¨-XX:PermSize设置éå å
ååå§å¼ï¼é»è®¤æ¯ç©çå
åç1/64ï¼
ç±XX:MaxPermSize设置æ大éå å
åç大å°ï¼é»è®¤æ¯ç©çå
åç1/4ã
JVMå
åéå¶(æ大å¼)
é¦å
JVMå
åéå¶äºå®é
çæ大ç©çå
åï¼å设ç©çå
åæ é大çè¯ï¼JVMå
åçæ大å¼è·æä½ç³»ç»æå¾å¤§çå
³ç³»ã
ç®åç说就32ä½å¤çå¨è½ç¶å¯æ§å
å空é´æ4GB,ä½æ¯å
·ä½çæä½ç³»ç»ä¼ç»ä¸ä¸ªéå¶ï¼è¿ä¸ªéå¶ä¸è¬æ¯2GB-3GBï¼ä¸è¬æ¥è¯´
Windowsç³»ç»ä¸ä¸º1.5G-2Gï¼Linuxç³»ç»ä¸ä¸º2G-3Gï¼ï¼è64bit以ä¸çå¤çå¨å°±ä¸ä¼æéå¶äºã
设置VMåæ°å¯¼è´ç¨åºæ æ³å¯å¨ä¸»è¦æ以ä¸å ç§åå ï¼
1) åæ°ä¸-Xmsçå¼å¤§äº-Xmxï¼æè
-XX:PermSizeçå¼å¤§äº-XX:MaxPermSizeï¼
2) -Xmxçå¼å-XX:MaxPermSizeçæ»åè¶
è¿äºJVMå
åçæ大éå¶ï¼æ¯å¦å½åæä½ç³»ç»æ大å
åéå¶ï¼æè
å®é
çç©çå
åççã
说å°å®é
ç©çå
åè¿ééè¦è¯´æä¸ç¹çæ¯ï¼å¦æä½ çå
åæ¯1024MBï¼ä½å®é
ç³»ç»ä¸ç¨å°ç并ä¸å¯è½æ¯1024MBï¼å 为æä¸é¨å被硬件å ç¨äºã
为ä½å°ä¸é¢çåæ°åå
¥å°eclipse.iniæ件Eclipse没ææ§è¡å¯¹åºç设置ï¼
é£ä¸ºä»ä¹åæ ·çåæ°å¨å¿«æ·æ¹å¼æè
å½ä»¤è¡ä¸ææèå¨eclipse.iniæ件ä¸æ¯æ æçå¢ï¼è¿æ¯å 为æ们没æéµå®eclipse.iniæ件ç设置è§åï¼
åæ°å½¢å¦â项 å¼âè¿ç§å½¢å¼ï¼ä¸é´æç©ºæ ¼çéè¦æ¢è¡ä¹¦åï¼å¦æå¼ä¸æç©ºæ ¼çéè¦ç¨åå¼å·å
æ¬èµ·æ¥ãæ¯å¦æ们使ç¨-vm
C:\Java\jre1.6.0\bin\javaw.exeåæ°è®¾ç½®èææºï¼å¨eclipse.iniæ件ä¸è¦åæè¿æ ·ï¼
-vm
C:\Java\jre1.6.0\bin\javaw.exe
æç
§ä¸é¢æ说çï¼æååæ°å¨eclipse.iniä¸å¯ä»¥åæè¿ä¸ªæ ·åï¼
-vmargs
-Xms128M
-Xmx512M
-XX:PermSize=64M
-XX:MaxPermSize=128M
å®é
è¿è¡çç»æå¯ä»¥éè¿Eclipseä¸
âHelpâ-âAbout Eclipse SDKâçªå£éé¢çâConfiguration Detailsâæé®è¿è¡æ¥çã
å¦å¤éè¦è¯´æ
çæ¯ï¼Eclipseå缩å
ä¸èªå¸¦çeclipse.iniæ件å
容æ¯è¿æ ·çï¼
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vmargs
-Xms40m
-Xmx256m
å
¶ä¸âlauncher.XXMaxPermSizeï¼æ³¨ææåé¢æ¯ä¸¤ä¸ªè¿æ¥çº¿ï¼è·-XX:MaxPermSizeåæ°çå«ä¹åºæ¬æ¯ä¸æ ·çï¼æ
è§å¾å¯ä¸çåºå«å°±æ¯åè
æ¯eclipse.exeå¯å¨çæ¶å设置çåæ°ï¼èåè
æ¯eclipseæ使ç¨çJVMä¸çåæ°ãå
¶å®äºè
设置ä¸ä¸ªå°±å¯ä»¥äºï¼æ以
è¿éå¯ä»¥æ âlauncher.XXMaxPermSizeåä¸ä¸è¡ä½¿ç¨#注éæã
å
¶ä»çå¯å¨åæ°ã å¦æä½ æä¸ä¸ªåæ ¸çCPUï¼ä¹è®¸å¯ä»¥å°è¯è¿ä¸ªåæ°:
-XX:+UseParallelGC
让GCå¯ä»¥æ´å¿«çæ§è¡ã
温馨提示:答案为网友推荐,仅供参考