Eclipse的最佳JVM设置是什么?

What are the best JVM settings for Eclipse?

您在运行Eclipse时找到的最佳JVM设置是什么?


这是一年中的时间:"eclipse.ini取3"设置反击!

Eclipse Helios 3.6和3.6.x设置

alt text http://www.eclipse.org/home/promotions/friends-helios/helios.png

在设置了Eclipse Ganymede 3.4.x和Eclipse Galileo 3.5.x之后,这里深入介绍了Eclipse Helios 3.6.x的"优化"eclipse.ini设置文件:

  • 基于运行时选项,
  • 并使用7月27日发布的Sun-Oracle JVM 1.6u21 b7(某些Sun专有选项可能涉及)。
  • (通过"优化",我的意思是能够在我们糟糕的工作站上运行一个完整的Eclipse,从2002年开始使用2Go RAM和XPSp3。但我也在Windows7上测试了相同的设置)

    的eclipse.ini

    alt text

    警告:对于非Windows平台,请使用Sun专有选项-XX:MaxPermSize而不是Eclipse专有选项--launcher.XXMaxPermSize
    那就是:除非你使用最新的jdk6u21 build 7。
    请参阅下面的Oracle部分。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    -data
    ../../workspace
    -showlocation
    -showsplash
    org.eclipse.platform
    --launcher.defaultAction
    openFile
    -vm
    C:/Prog/Java/jdk1.6.0_21/jre/bin/server/jvm.dll
    -vmargs
    -Dosgi.requiredJavaVersion=1.6
    -Declipse.p2.unsignedPolicy=allow
    -Xms128m
    -Xmx384m
    -Xss4m
    -XX:PermSize=128m
    -XX:MaxPermSize=384m
    -XX:CompileThreshold=5
    -XX:MaxGCPauseMillis=10
    -XX:MaxHeapFreeRatio=70
    -XX:+CMSIncrementalPacing
    -XX:+UnlockExperimentalVMOptions
    -XX:+UseG1GC
    -XX:+UseFastAccessorMethods
    -Dcom.sun.management.jmxremote
    -Dorg.eclipse.equinox.p2.reconciler.dropins.directory=C:/Prog/Java/eclipse_addons

    注意:
    p2.reconciler.dropins.directory调整为您选择的外部目录。
    看到这个答案。
    我们的想法是能够独立于任何Eclipse安装将新插件放在目录中。

    以下部分详细介绍了此eclipse.ini文件中的内容。

    可怕的Oracle JVM 1.6u21(pre build 7)和Eclipse崩溃

    Andrew Niefer确实提醒我这种情况,写了一篇关于非标准vm参数(-XX:MaxPermSize)的博客文章,并且可能导致其他供应商的vms根本无法启动。
    但是该选项(--launcher.XXMaxPermSize)的eclipse版本不适用于新的JDK(6u21,除非你使用的是6u21 build 7,见下文)。

    final 解决方案位于Eclipse Wiki上,而Windows上的Helios解决方案仅限于6u21 pre build 7:

  • 下载修复的eclipse_1308.dll(2010年7月16日)
  • 把它放进去
  • 1
    (eclipse_home)/plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503

    而已。没有设置在这里调整(再次,仅适用于Windows上的Helios,具有6u21预构建7)。
    对于非Windows平台,您需要恢复到Sun专有选项-XX:MaxPermSize

    该问题基于一个回归:由于java.exe中的Oracle重新命名导致JVM识别失败,并在Eclipse上触发了错误319514。
    Andrew负责Bug 320005 - [launcher] --launcher.XXMaxPermSize: isSunVM应该对Oracle返回true,但这只适用于Helios 3.6.1。
    另一位Eclipse提交者Francis Upton对所有情况进行了反思。

    7月27日更新u21b7:
    Oracle已经对下一个Java 6版本的变化做了回归,并且在JDK 7之前不会再次实现它。
    如果使用jdk6u21 build 7,则可以恢复为--launcher.XXMaxPermSize(eclipse选项)而不是-XX:MaxPermSize(非标准选项)。
    C启动器shim eclipse.exe中发生的自动检测仍将查找"Sun Microsystems"字符串,但是对于6u21b7,它现在?俅喂ぷ鳌?/p>>

    现在,我仍然保留-XX:MaxPermSize版本(因为我不知道每个人都会启动eclipse正确的JDK)。

    隐式`-startup`和`--launcher.library`

    与之前的设置相反,这些模块的确切路径不再设置,这很方便,因为它可以在不同的Eclipse 3.6.x版本之间变化:

  • startup:如果未指定,则可执行文件将在plugins目录中查找具有最高版本的org.eclipse.equinox.launcher包。
  • launcher.library:如果未指定,则可执行文件在plugins目录中查找具有最高版本的相应org.eclipse.equinox.launcher.[platform]片段,并使用名为eclipse_*的共享库。
  • 使用JDK6

    现在显式需要JDK6来启动Eclipse:

    1
    -Dosgi.requiredJavaVersion = 1.6

    这个SO问题报告了在Mac OS上发展的积极事件。

    + UnlockExperimentalVMOptions

    以下选项是Sun JVM的一些实验选项的一部分。

    1
    2
    3
    -XX:+UnlockExperimentalVMOptions
    -XX:+UseG1GC
    -XX:+UseFastAccessorMethods

    在这篇博客文章中已经报道了它们可能加速Eclipse。
    查看此处的所有JVM选项以及官方Java Hotspot选项页面。
    注意:这些选项的详细列表报告UseFastAccessorMethods默认情况下可能处于活动状态。

    另请参阅"更新JVM":

    As a reminder, G1 is the new garbage collector in preparation for the JDK 7, but already used in the version 6 release from u17.

    Ok.

    从命令行打开Eclipse中的文件

    请参阅Andrew Niefer的博客文章报告此新选项:

    1
    2
    --launcher.defaultAction
    openFile

    This tells the launcher that if it is called with a command line that only contains arguments that don't start with"-", then those arguments should be treated as if they followed"--launcher.openFile".

    Ok.

    1
    eclipse myFile.txt

    This is the kind of command line the launcher will receive on windows when you double click a file that is associated with eclipse, or you select files and choose"Open With" or"Send To" Eclipse.

    Ok.

    Relative paths will be resolved first against the current working directory, and second against the eclipse program directory.

    Ok.

    请参阅错误301033以供参考。最初的错误4922(2001年10月,9年后修复)。

    p2和Unsigned Dialog Prompt

    如果您在安装许多插件时厌倦了此对话框:

    alt text

    ,添加eclipse.ini

    1
    -Declipse.p2.unsignedPolicy=allow

    请参阅Chris Aniszczy的博客文章和错误报告235526。

    我想说安全研究支持这样一个事实,即提示越少越好。
    人们忽视了他们想要完成的事情中出现的事情。

    对于3.6,我们不应该在流程中间弹出警告 - 无论我们简化多少,人们都会忽略它们。
    相反,我们应该收集所有问题,不要安装那些有问题的软件包,而是让用户回到工作流程中可以修复的位置 - 添加信任,更松散地配置安全策略等。这称为'安全分期"。

    ---------- http://www.eclipse.org/home/categories/images/wiki.gif替代文字http://www.eclipse.org/home/categories/images/wiki.gif alt text http://www.eclipse.org/home/categories/images/wiki.gif

    其他选项

    这些选项不直接在上面的eclipse.ini中,但如果需要可以派上用场。

    Windows7上的`user.home`问题

    当eclipse启动时,它将读取其密钥库文件(保存密码),该文件位于user.home中。
    如果由于某种原因user.home无法正确解析为完整的路径,Eclipse将无法启动。
    最初在此SO问题中提出,如果您遇到此问题,则需要将密钥库文件重新定义为显式路径(不再需要user.home在开始时解析)

    添加eclipse.ini

    1
    2
    -eclipse.keyring
    C:\eclipse\keyring.txt

    这已经被错误300577跟踪,它已经解决了这个其他的SO问题。

    调试模式

    等等,Eclipse中有多个设置文件。
    如果你添加到eclipse.ini选项:

    1
    -debug

    ,您启用调试模式,Eclipse将查找另一个设置文件:.options文件,您可以在其中指定一些OSGI选项。
    当你通过dropins文件夹添加新的插件时,这很好。
    在.options文件中添加以下设置,如本博文"Dropins diagnosis"中所述:

    1
    2
    org.eclipse.equinox.p2.core/debug=true
    org.eclipse.equinox.p2.core/reconciler=true

    P2 will inform you what bundles were found in dropins/ folder, what request was generated, and what is the plan of installation. Maybe it is not detailed explanation of what actually happened, and what went wrong, but it should give you strong information about where to start:

    Ok.

  • was your bundle in the plan?
  • Was it installation problem (P2 fault)
  • or maybe it is just not optimal to include your feature?
  • Ok.

    这来自Bug 264924 - [reconciler]没有对dropins问题的诊断,最终解决了以下问题:

    1
    2
    Unzip eclipse-SDK-3.5M5-win32.zip to ..../eclipse
    Unzip mdt-ocl-SDK-1.3.0M5.zip to ..../eclipse/dropins/mdt-ocl-SDK-1.3.0M5

    This is a problematic configuration since OCL depends on EMF which is missing.
    3.5M5 provides no diagnosis of this problem.

    Ok.

    Start eclipse.
    No obvious problems. Nothing in Error Log.

    Ok.

  • Help / About / Plugin details shows org.eclipse.ocl.doc, but not org.eclipse.ocl.
  • Help / About / Configuration details has no (diagnostic) mention of
    org.eclipse.ocl.
  • Help / Installation / Information Installed Software has no mention of org.eclipse.ocl.
  • Ok.

    Where are the nice error markers?

    Ok.

    清单类路径

    看到这篇博文:

  • In Galileo (aka Eclipse 3.5), JDT started resolving manifest classpath in libraries added to project’s build path. This worked whether the library was added to project’s build path directly or via a classpath container, such as the user library facility provided by JDT or one implemented by a third party.
  • In Helios, this behavior was changed to exclude classpath containers from manifest classpath resolution.
  • Ok.

    这意味着您的某些项目可能无法再在Helios中编译。
    如果要恢复为Galileo行为,请添加:

    1
    -DresolveReferencedLibrariesForContainers=true

    有关参考,请参阅错误305037,错误313965和错误313890。

    IPV4堆栈

    这个问题在没有访问插件更新站点时提到了一个潜在的修复:

    1
    -Djava.net.preferIPv4Stack=true

    这里提到以防万一它可以帮助您的配置。

    JVM1.7x64潜在的优化

    本文报道:

    For the record, the very fastest options I have found so far for my bench test with the 1.7 x64 JVM n Windows are:

    Ok.

    1
    2
    3
    4
    -Xincgc
    -XX:-DontCompileHugeMethods
    -XX:MaxInlineSize=1024  
    -XX:FreqInlineSize=1024

    But I am still working on it...

    Ok.

    好。


    Eclipse Galileo 3.5和3.5.1设置

    目前(2009年11月),我正在使用jdk6 update 17测试以下配置选项集(使用Galileo - eclipse 3.5.x,请参阅下面的Helios 3.6.x的3.4或更高版本):
    (当然,将此eclipse.ini中存在的相对路径调整为您设置的正确路径)

    注意:对于eclipse3.5,将startuplauncher.library行替换为:

    1
    2
    3
    4
    -startup
    plugins/org.eclipse.equinox.launcher_1.0.200.v20090520.jar
    --launcher.library
    plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519

    eclipse.ini 3.5.1

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    -data
    ../../workspace
    -showlocation
    -showsplash
    org.eclipse.platform
    --launcher.XXMaxPermSize
    384m
    -startup
    plugins/org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar
    --launcher.library
    plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519
    -vm
    ../../../../program files/Java/jdk1.6.0_17/jre/bin/client/jvm.dll
    -vmargs
    -Dosgi.requiredJavaVersion=1.5
    -Xms128m
    -Xmx384m
    -Xss4m
    -XX:PermSize=128m
    -XX:MaxPermSize=384m
    -XX:CompileThreshold=5
    -XX:MaxGCPauseMillis=10
    -XX:MaxHeapFreeRatio=70
    -XX:+UseConcMarkSweepGC
    -XX:+CMSIncrementalMode
    -XX:+CMSIncrementalPacing
    -Dcom.sun.management.jmxremote
    -Dorg.eclipse.equinox.p2.reconciler.dropins.directory=C:/jv/eclipse/mydropins

    有关详细信息,请参阅上面的原始答案。

    变化(自2009年7月起)

    • 是指发射器而不是框架
    • 共享插件:org.eclipse.equinox.p2.reconciler.dropins.directory选项。
    • Galileo支持工作空间或VM的完全相对路径(当然,如果您的JVM和工作空间保持不变,则必须修改从一个eclipse安装到另一个的安装)
      以前,当eclipse发动时,那些相对的路径一直被重写成绝对路径......
    • 您还可以在eclipse目录中复制Java JDK安装的JRE目录

    注意事项

    有一个错误,忽略了与JDK实际相关的断点。
    使用JDK6u16或更新版本来启动eclipse(然后你可以在eclipse中定义你想要编译的JDK:这不是因为你用JDK6启动eclipse你必须使用相同的JDK编译)。

    马克斯

    注意用法:

    1
    2
    3
    4
    --launcher.XXMaxPermSize
    384m
    -vmargs
    -XX:MaxPermSize=128m

    如Eclipse Wiki中所述,

    Eclipse 3.3 supports a new argument to the launcher: --launcher.XXMaxPermSize.
    If the VM being used is a Sun VM and there is not already a -XX:MaxPermSize= VM argument, then the launcher will automatically add -XX:MaxPermSize=256m to the list of VM arguments being used.
    The 3.3 launcher is only capable of identifying Sun VMs on Windows.

    详情请参阅此条目:

    Not all vms accept the -XX:MaxPermSize argument which is why it is passed in this manner. There may (or may not) exist problems with identifying sun vms.
    Note: Eclipse 3.3.1 has a bug where the launcher cannot detect a Sun VM, and therefore does not use the correct PermGen size. It seems this may have been a known bug on Mac OS X for 3.3.0 as well.
    If you are using either of these platform combination, add the -XX flag to the eclipse.ini as described above.

    Notes:

    • the"384m" line translates to the"=384m" part of the VM argument, if the VM is case sensitive on the"m", then the so is this argument.
    • the"--launcher." prefix, this specifies that the argument is consumed by the launcher itself and was added to launcher specific arguments to avoid name collisions with application arguments. (Other examples are --launcher.library, --launcher.suppressErrors)

    The -vmargs -XX:MaxPermSize=384m part is the argument passed directly to the VM, bypassing the launcher entirely and no check on the VM vendor is used.


    Eclipse Ganymede 3.4.2设置

    有关更新的设置,请参阅上面的Eclipse Galileo 3.5设置。

    JDK

    在我看来,最好的JVM设置包括你能找到的最新JDK(所以现在,jdk1.6.0_b07到b16,除了b14和b15)

    的eclipse.ini

    即使使用那些相当低的内存设置,我也可以在旧的(2002)桌面上运行大型Java项目(以及Web服务器)和2Go RAM。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    -showlocation
    -showsplash
    org.eclipse.platform
    --launcher.XXMaxPermSize
    256M
    -framework
    plugins\org.eclipse.osgi_3.4.2.R34x_v20080826-1230.jar
    -vm
    jdk1.6.0_10\jre\bin\client\jvm.dll
    -vmargs
    -Dosgi.requiredJavaVersion=1.5
    -Xms128m
    -Xmx384m
    -Xss2m
    -XX:PermSize=128m
    -XX:MaxPermSize=128m
    -XX:MaxGCPauseMillis=10
    -XX:MaxHeapFreeRatio=70
    -XX:+UseConcMarkSweepGC
    -XX:+CMSIncrementalMode
    -XX:+CMSIncrementalPacing
    -XX:CompileThreshold=5
    -Dcom.sun.management.jmxremote

    有关新选项的更多详细信息,请参阅GKelly的SO答案和Piotr Gabryanczyk的博客文章。

    监控

    您还可以考虑启动:

    1
    C:\[jdk1.6.0_0x path]\bin\jconsole.exe

    如前一个关于内存消耗的问题所述。


    Eclipse Indigo 3.7.2设置(64位linux)

    在x86-64 Linux上运行的Sun / Oracle java版本"1.6.0_31"和Eclipse 3.7的设置:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    -nosplash
    -vmargs
    -Xincgc
    -Xss500k
    -Dosgi.requiredJavaVersion=1.6
    -Xms64m
    -Xmx200m
    -XX:NewSize=8m
    -XX:PermSize=80m
    -XX:MaxPermSize=150m
    -XX:MaxPermHeapExpansion=10m
    -XX:+UseConcMarkSweepGC
    -XX:CMSInitiatingOccupancyFraction=70
    -XX:+UseCMSInitiatingOccupancyOnly
    -XX:+UseParNewGC
    -XX:+CMSConcurrentMTEnabled
    -XX:ConcGCThreads=2
    -XX:ParallelGCThreads=2
    -XX:+CMSIncrementalPacing
    -XX:CMSIncrementalDutyCycleMin=0
    -XX:CMSIncrementalDutyCycle=5
    -XX:GCTimeRatio=49
    -XX:MaxGCPauseMillis=20
    -XX:GCPauseIntervalMillis=1000
    -XX:+UseCMSCompactAtFullCollection
    -XX:+CMSClassUnloadingEnabled
    -XX:+DoEscapeAnalysis
    -XX:+UseCompressedOops
    -XX:+AggressiveOpts
    -XX:+ExplicitGCInvokesConcurrentAndUnloadsClasses

    请注意,这对堆只使用200 MB而非堆使用150 MB。如果你正在使用
    巨大的插件,你可能想要增加"-Xmx200m"和"-XX:MaxPermSize = 150m"限制。

    这些标志的主要优化目标是在所有情况下最小化延迟,并且作为辅助优化目标最小化内存使用。


    -showlocation

    为了让eclipse更容易运行两次,并知道你正在处理哪个工作区

    Eclipse 3.6添加了一个首选项选项,用于指定显示Workspace name (shown in window title)的内容,其效果比-showlocation好得多,原因有三:

  • 你不需要重新启动eclipse才能生效。
  • 您可以选择一个简短的代码。
  • 它首先出现在透视图和应用程序名称之前。

  • 如果您使用的是Linux + Sun JDK / JRE 32位,请将"-vm"更改为:

    1
    2
    -vm
    [your_jdk_folder]/jre/lib/i386/client/libjvm.so

    如果您使用的是Linux + Sun JDK / JRE 64位,请将"-vm"更改为:

    1
    2
    -vm
    [your_jdk_folder]/jre/lib/amd64/server/libjvm.so

    这对我来说在Ubuntu 8.10和9.04上运行正常


    如果你要使用jdk6更新14,我建议使用G1垃圾收集器,这似乎有助于提高性能。

    为此,请删除以下设置:

    -XX:+ UseConcMarkSweepGC

    -XX:+ CMSIncrementalMode

    -XX:+ CMSIncrementalPacing

    并用以下内容替换它们:

    -XX:+ UnlockExperimentalVMOptions

    -XX:+ UseG1GC


    您也可以尝试使用JRockit运行。它是针对服务器优化的JVM,但许多长期运行的客户端应用程序(如IDE)在JRockit上运行良好。 Eclipse也不例外。 JRockit没有perm空间,因此您无需配置它。

    可以设置暂停时间目标(ms)以避免长时间停止UI的gc暂停。

    1
    2
    3
    4
    5
    6
    7
    -showsplash
    org.eclipse.platform
    -vm
     C:\jrmc-3.1.2-1.6.0\bin\javaw.exe
    -vmargs
    -XgcPrio:deterministic
    -XpauseTarget:20

    我通常不打扰设置-Xmx和-Xms,让JRockit在必要时增加堆。如果使用JRockit启动Eclipse应用程序,还可以使用JRockit Mission Control工具套件监视,分析和查找应用程序中的内存泄漏。您从此更新站点下载插件。注意,仅适用于Eclipse 3.3和Eclipse 3.4


    这是我在i7 2630M 16GB RAM笔记本电脑上运行的Eclipse的设置,这个设置已经使用了一个星期,没有一次崩溃,Eclipse 3.7运行顺利。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    -startup
    plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
    --launcher.library
    plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.100.v20110502
    -product
    org.eclipse.epp.package.jee.product
    --launcher.defaultAction
    openFile
    --launcher.XXMaxPermSize
    256M
    -showsplash
    org.eclipse.platform
    --launcher.XXMaxPermSize
    256m
    --launcher.defaultAction
    openFile
    -vmargs
    -Dosgi.requiredJavaVersion=1.5
    -Xms1024m
    -Xmx4096m
    -XX:MaxPermSize=256m

    计算:
    对于Win 7 x64

    • Xms =物理内存/ 16
    • Xmx =物理内存/ 4
    • MaxPermSize =与默认值相同,即256m


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    -startup
    ../../../plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
    --launcher.library
    ../../../plugins/org.eclipse.equinox.launcher.cocoa.macosx_1.1.100.v20110502
    -showsplash
    org.eclipse.platform
    --launcher.XXMaxPermSize
    256m
    --launcher.defaultAction
    openFile
    -vmargs
    -Xms128m
    -Xmx512m
    -XX:MaxPermSize=256m
    -Xdock:icon=../Resources/Eclipse.icns
    -XstartOnFirstThread
    -Dorg.eclipse.swt.internal.carbon.smallFonts
    -Dcom.sun.management.jmxremote
    -Declipse.p2.unsignedPolicy=allow

    而这些设置对我来说就像是一种魅力。我正在运行OS X10.6,Eclipse 3.7 Indigo,JDK1.6.0_24


    我自己的设置(Java 1.7,修改为1.6):

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    -vm
    C:/Program Files (x86)/Java/jdk1.7.0/bin
    -startup
    plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
    --launcher.library
    plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.100.v20100628
    -showsplash
    org.eclipse.platform
    --launcher.XXMaxPermSize
    256m
    --launcher.defaultAction
    openFile
    -vmargs
    -server
    -Dosgi.requiredJavaVersion=1.7
    -Xmn100m
    -Xss1m
    -XgcPrio:deterministic
    -XpauseTarget:20
    -XX:PermSize=400M
    -XX:MaxPermSize=500M
    -XX:CompileThreshold=10
    -XX:MaxGCPauseMillis=10
    -XX:MaxHeapFreeRatio=70
    -XX:+UnlockExperimentalVMOptions
    -XX:+DoEscapeAnalysis
    -XX:+UseG1GC
    -XX:+UseFastAccessorMethods
    -XX:+AggressiveOpts
    -Xms512m
    -Xmx512m


    如果您像我一样并且当前的Oracle 1.6版本存在问题,那么您可能需要更新JDK或设置

    1
    -XX:MaxPermSize

    。有关更多信息,请访问:http://java.dzone.com/articles/latest-java-update-fixes


    Eclipse喜欢大量的RAM。至少使用-Xmx512M。更多如果可用。


    XX:+ UseParallelGC这是有史以来最棒的选择!


    -vm
    C: Program Files Java jdk1.6.0_07 jre bin client jvm.dll

    要指定您正在使用的Java版本,请使用dll而不是启动javaw进程


    这是我使用的(虽然我在快捷方式而不是设置文件中有它们):

    eclipse.exe -showlocation -vm"C: Java jdk1.6.0_07 bin javaw.exe"-vmargs -Xms256M -Xmx768M -XX:+ UseParallelGC -XX:MaxPermSize = 128M