Eclipse的最佳JVM设置是什么? [关闭]

那年仲夏 提交于 2020-03-17 18:07:23

某厂面试归来,发现自己落伍了!>>>

按照目前的情况,这个问题不适合我们的问答形式。 我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。 如果您认为此问题可以解决并且可以重新提出, 请访问帮助中心以获取指导。
7年前关闭。
已锁定 。 该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。 它目前不接受新的答案或互动。 了解更多

您发现运行Eclipse的最佳JVM设置是什么?


#1楼

如果要使用jdk6 update 14,建议使用G1垃圾收集器,这似乎对性能有所帮助。

为此,请删除以下设置:

-XX:+ UseConcMarkSweepGC
-XX:+ CMSIncrementalMode
-XX:+ CMSIncrementalPacing

并将它们替换为:

-XX:+ UnlockExperimentalVMOptions
-XX:+ UseG1GC


#2楼

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行替换为:

-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

-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数量:不是因为必须使用同一JDK进行编译而使用JDK6启动eclipse)。

最高

请注意以下用途:

--launcher.XXMaxPermSize
384m
-vmargs
-XX:MaxPermSize=128m

Eclipse Wiki中所述

Eclipse 3.3支持启动程序的新参数:-- --launcher.XXMaxPermSize
如果使用的VM是Sun VM,并且-XX:MaxPermSize=没有-XX:MaxPermSize= VM参数,则启动程序将自动将-XX:MaxPermSize=256m添加到使用的VM参数列表中。
3.3启动器仅能够识别Windows上的Sun VM。

本条目中所述

并非所有的vm都接受-XX:MaxPermSize参数,这就是为什么以这种方式传递它。 标识sun vm可能存在(也可能不存在)问题。
注意:Eclipse 3.3.1有一个错误 ,启动器无法检测到Sun VM,因此不使用正确的PermGen大小。 看来这也可能是Mac OS X 3.3.0上的一个已知错误
如果您正在使用这两种平台组合中的任一种,则如上所述,将-XX标志添加到eclipse.ini

笔记:

  • 384m ”行转换为VM参数的“ =384m ”部分,如果VM在“ m ”上区分大小写,则该参数也是如此。
  • --launcher. ”前缀,它指定参数由启动器本身使用,并添加到启动器特定的参数中,以避免名称与应用程序参数冲突。 (其他示例是--launcher.library ,-- --launcher.suppressErrors

-vmargs -XX:MaxPermSize=384m部分是直接传递给VM的参数,完全绕过启动程序,并且不对VM供应商进行检查。


#3楼

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

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


#4楼

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


#5楼

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

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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!