您发现运行Eclipse的最佳JVM设置是什么?
#1 楼
又是一年中的那个时候:“ eclipse.ini取3”设置反击了!Eclipse Helios 3.6和3.6.x设置
替代文本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设置文件:
基于运行时选项,并使用Sun-Oracle JVM 1.6u21 b7(于7月27日发布) (可能会涉及某些Sun专有选项)。
(通过“优化”,我的意思是能够在工作的拙劣工作站上运行全功能的Eclipse,有些是2002年的旧P4,带有2Go RAM和XPSp3。但是我也在Windows7上测试了相同的设置)。
Eclipse.ini
警告:对于非Windows平台,使用Sun专有选项
-XX:MaxPermSize
代替Eclipse专有选项--launcher.XXMaxPermSize
。即:除非您使用的是最新的jdk6u21版本7。
请参见下面的Oracle部分。
-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
适配到您选择的外部目录。请参见该SO答案。
其想法是能够独立于任何Eclipse安装,将新插件拖放到目录中。
以下各节详细介绍了此
eclipse.ini
文件中的内容。 可怕的Oracle JVM 1.6u21(内部版本7)和Eclipse崩溃
Andrew Niefer确实提醒我注意这种情况,并写了一篇博客文章,内容涉及一个非标准的vm参数(
-XX:MaxPermSize
)并可能导致其他供应商的vm根本无法启动。但是该选项的eclipse版本(
--launcher.XXMaxPermSize
)不能与新的JDK(6u21)一起使用,除非您正在使用6u21 build 7,请参见下文)。最终的解决方案在Eclipse Wiki上,并且对于仅使用6u21 pre build 7的Windows上的Helios:
下载固定的eclipse_1308.dll(2010年7月16日)
并放入
(eclipse_home)/plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503
就这样。这里没有要调整的设置(同样,仅适用于6u21预构建为7的Windows上的Helios)。
对于非Windows平台,您需要恢复到Sun专有选项
-XX:MaxPermSize
。该问题基于一种回归:由于Oracle在java.exe中重新命名,导致JVM识别失败,并在Eclipse上触发了错误319514。
安德鲁(Andrew)处理了错误320005-[启动器]
--launcher.XXMaxPermSize: isSunVM
对于Oracle应该返回true,但是仅适用于Helios 3.6.1。另一个Eclipse提交者Francis Upton反映了所有情况。更新u21b7,7月27日:Oracle已经退回了对下一个Java 6版本的更改,并获得了胜利。在JDK 7之前不要再次实现它。
如果使用jdk6u21 build 7,则可以还原到
--launcher.XXMaxPermSize
(eclipse选项)而不是-XX:MaxPermSize
(非标准选项)。自动检测发生在C启动器shim中,
eclipse.exe
仍将查找“ Sun Microsystems
”字符串,但是使用6u21b7,它现在将继续工作-再次。现在,我仍然保留
-XX:MaxPermSize
版本(因为我不知道何时每个人都会启动Eclipse正确的JDK)。隐含`-startup`和`--launcher.library`
与先前的设置相反,不再设置这些模块的确切路径,这很方便,因为在不同的Eclipse 3.6.x版本之间它可能会有所不同:
启动:如果未指定,可执行文件将在插件目录中查找具有最高版本的
org.eclipse.equinox.launcher
软件包。launcher.library:如果未指定,则可执行文件将在
plugins
目录中查找具有最高版本的相应org.eclipse.equinox.launcher.[platform]
片段,并使用共享的内部名为eclipse_*
的库。使用JDK6
现在明确需要JDK6来启动Eclipse:
-Dosgi.requiredJavaVersion = 1.6
这个SO问题报告了在Mac OS上进行开发的积极影响。
+ UnlockExperimentalVMOptions
以下选项是Sun JVM的一些实验性选项的一部分。
-XX:+UnlockExperimentalVMOptions
-XX:+UseG1GC
-XX:+UseFastAccessorMethods
在此博客文章中已对它们进行了报道,以潜在地提高Eclipse的速度。 >在此处以及在官方Java Hotspot选项页面中查看所有JVM选项。
注意:这些选项的详细列表报告
UseFastAccessorMethods
默认情况下可能处于活动状态。 另请参阅“更新您的JVM”:
提醒一下,G1是准备JDK 7的新垃圾收集器,但是已经在u17的第6版发行版。
从命令行在Eclipse中打开文件
请参阅Andrew Niefer的博客文章,报告此新选项:
--launcher.defaultAction
openFile
这告诉启动程序,如果使用仅包含不以“
-
”开头的参数的命令行来调用启动程序参数应被视为遵循“ --launcher.openFile
”。eclipse myFile.txt
这是启动器将在Windows上接收的命令行类型当您双击与eclipse相关的文件时,或者选择文件并选择“
Open With
”或“ Send To
” Eclipse。相对路径将首先针对当前工作目录进行解析,其次针对eclipse程序目录。
请参见错误30 1033供参考。最初是错误4922(2001年10月,已在9年后修复)。
p2和“未签名的对话框提示”
如果在安装过程中厌倦了此对话框您的许多插件中:
,然后添加您的
eclipse.ini
: Chris Aniszczy和错误报告235526。我确实想说安全研究支持以下事实:提示越少越好。他们想要完成的事情的流程。
对于3.6,我们不应在流程中间弹出警告-不管我们进行多少简化,人们都只会忽略它们。
我们应该收集所有问题,不要安装有问题的捆绑件,而是将用户带回到工作流程中可以修复的位置-添加信任,更宽松地配置安全策略等。这称为“安全登台”。
- -------- http://www.eclipse.org/home/categories/images/wiki.gif替代文字http://www.eclipse.org/home/categories/images/wiki.gif替代文字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
中:-Declipse.p2.unsignedPolicy=allow
错误300577对此进行了跟踪,已在其他SO问题中得到解决。
调试模式
等等,Eclipse中有多个设置文件。
如果在
eclipse.ini
中添加以下选项:-eclipse.keyring
C:\eclipse\keyring.txt
,启用调试模式,Eclipse将寻找另一个设置文件:一个
.options
文件,您可以在其中指定一些OSGI选项。当您通过dropins文件夹。
在此.options文件中添加以下设置,如博客文章“ Dropins诊断”中所述:
-debug
P2将通知您在
dropins/
文件夹中找到了哪些捆绑软件,生成了哪些请求以及安装计划是什么。也许不是对实际发生的事情以及出了什么问题的详细解释,但是它应该为您提供从何处开始的重要信息: 是安装问题(P2故障)
或包括功能不是最佳选择吗?
来自错误264924- [调节器]无法诊断dropins问题,最终解决了以下问题:
org.eclipse.equinox.p2.core/debug=true
org.eclipse.equinox.p2.core/reconciler=true
这是一个有问题的配置,因为OCL依赖于EMF。
3.5M5无法诊断此问题。
启动Eclipse。
没有明显的问题。错误日志中没有任何内容。
Help / About / Plugin
详细信息显示org.eclipse.ocl.doc
,但没有org.eclipse.ocl
。 > Help / About / Configuration
。org.eclipse.ocl
没有提及Help / Installation / Information Installed Software
。哪里有很好的错误标记?
清单Classpath
请参见此博客文章:
在Galileo(又名Eclipse 3.5)中,JDT开始解析添加到项目构建路径中的库中的清单类路径。 。无论是直接将库添加到项目的构建路径中,还是通过类路径容器将其添加到项目的构建路径中,例如JDT提供的用户库功能或第三方实现的功能。
在Helios中,此行为已更改为从清单类路径解析中排除类路径容器。
这意味着您的某些项目可能不再在Helios中编译。
如果要恢复为伽利略的行为,请添加:
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
有关参考,请参见错误305037,错误313965和错误313890。
IPV4堆栈
这样的SO问题在不访问插件更新站点时提到了一个潜在的修复方法: />
JVM1.7x64潜在的优化
本文报道:
作为记录,到目前为止,我为我找到的最快的选择是在1.7 x64 JVM n Windows上进行的基准测试是:
-DresolveReferencedLibrariesForContainers=true
但是我仍在研究中...
评论
按照此链接oracle.com/technetwork/java/javase/gc-tuning-6-140523.html#icms,您需要具有-XX:+ UseConcMarkSweepGC才能使用-XX:+ CMSIncrementalMode。上面的示例中缺少该内容。如果我们使用G1 GC,我们将不需要CMSIncrementalMode,对吗?
–RuntimeException
2010-10-26 12:32
嗨,G1GC在Mac上真是一场灾难。它吞噬了整个计算机,需要重新启动。
– bmargulies
2010-11-29 15:52
@VonC:-XX:CompileThreshold = 5对我造成严重的影响。单独消除此选项,将我的Eclipse启动时间从> 1分钟减少到17秒!更不用说IDE的运行速度了。看到这个链接
– TrinitronX
2011年5月13日19:13
@TrinitronX :(实际上是每个人),-XX:CompileThreshold = 5是一个非常低的值(默认值= 10000)。该值表示编译之前方法调用/分支的数量。太低的值将导致您的CodeCache过早填满,并且控制台可能会报告:CodeCache已满。编译器已禁用禁用编译器后,您会注意到应用程序运行缓慢。有两种方法可以解决此问题:1.使用-XX:CompileThreshold = 1000(微调此数字)或2.尝试使用-XX:ReservedCodeCacheSize = 64m(默认值32m的两倍)增加代码缓存的大小
–Drupad Panchal
2011年6月29日19:31
对于Linux,将/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/i386/client/libjvm.so用于jvm位置
–r15habh
2011年8月4日在8:24
#2 楼
Eclipse Galileo 3.5和3.5.1设置当前(2009年11月),我正在使用jdk6 update 17测试以下配置选项集(使用Galileo-eclipse 3.5.x,请参见下文了解3.4或
(当然,请将eclipse.ini中存在的相对路径调整为适合您设置的正确路径)
注意:对于eclipse3.5,请替换
startup
和launcher.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
-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)。
Max
请注意以下用法:
--launcher.XXMaxPermSize
384m
-vmargs
-XX:MaxPermSize=128m
如Eclipse Wiki中所述,
Eclipse 3.3支持启动器的新参数:
--launcher.XXMaxPermSize
。如果使用的VM是Sun VM,并且还没有
-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供应商进行检查。评论
对于最新的eclipse 3.5x64版本,我对此有一些问题:--launcher.library plugins / org.eclipse.equinox.launcher.win32.win32.x86_64_1.0_200.v20090519 -startup plugins / org.eclipse.equinox.launcher_1 .0.200.v20090520.jar我也必须对j2k JAVA_HOME / bin / javaw使用m2eclipse插件。否则,这太疯狂了。
–内森·费格(Nathan Feger)
09-10-22在16:52
这两个人不是在做同一件事吗? “ --launcher.XXMaxPermSize 384m”和“ -XX:MaxPermSize = 128m”
–伊戈尔·兹诺夫(Igor Zinov'yev)
2009年11月10日15:26
@Igor Zinov'yev:这有点多余,但是两者都可能有用,具体取决于平台和Eclipse版本。我将它们重置为相同的值,并通过一些有关这些设置的文档来完成我的回答。
–VonC
09年10月10日在18:29
另请参阅stackoverflow.com/questions/2204173/…
–VonC
2010-2-5在5:19
如果您始终想使用最新和最好的VM,那么为什么不使用1.6使用参数“ -Dosgi.requiredJavaVersion = 1.5”呢?
– Tony R
2010-4-12 14:52
#3 楼
Eclipse Ganymede 3.4.2设置有关更多最新设置,请参阅上面的Eclipse Galileo 3.5设置。在我看来,最好的JVM设置始终包括您可以找到的最新JDK(因此,到目前为止,jdk1.6.0_b07直至b16) ,但b14和b15除外)
eclipse.ini
即使内存设置很低,我也可以在旧的( 2002)带有2Go RAM的台式机。
-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的博客条目。
监控
您还可以考虑启动:
C:\[jdk1.6.0_0x path]\bin\jconsole.exe
如先前有关内存消耗的问题所述。
评论
-Xssv2m的用途是什么,当我将其包含在Eclipse不会启动的vm设置中时,查看了有关JVM设置的文档,但找不到它
–克雷格·安格斯(Craig Angus)
08年11月4日在15:57
对...这是一个错字:Xss2m,而不是Xssv2m:-Xss确定堆栈的大小:-Xss1024k。如果堆栈空间太小,最终您将看到一个异常类java.lang.StackOverflowError(这里是神话般的错误消息;-))
–VonC
08年11月4日在16:09
终于适应了第二组设置,并对它们的工作效果感到惊讶!
–克雷格·安格斯(Craig Angus)
08年12月7日在23:59
曾经有一段时间使用过设置,eclipse似乎很活泼,但是构建蚂蚁的速度似乎较慢?
–克雷格·安格斯(Craig Angus)
09年2月4日在11:00
@克雷格·安格斯(Craig Angus):很奇怪,您使用的是哪个版本的Eclipse?以及其中包含哪个ant版本?
–VonC
09年2月4日在11:03
#4 楼
Eclipse Indigo 3.7.2设置(64位Linux)在x86-64 Linux上运行的Sun / Oracle Java版本“ 1.6.0_31”和Eclipse 3.7的设置:
-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”的限制。
这些标志的主要优化目标是在所有情况下都尽量减少延迟,并作为次要优化目标将内存使用量降到最低。
评论
对我来说效果非常好(尽管我将与内存相关的设置的值加倍,但它仍然很低而且起泡快!)
–阿克套
2011-11-29 10:53
您同时具有-XX:+ UseConcMarkSweepGC和-XX:+ UseParNewGC。为什么?我认为您不能同时使用这两个垃圾收集器,而且我不确定哪个会被使用。
–herman
2012年1月16日13:02
我以为-XX:+ UseConcMarkSweepGC用于旧式垃圾收集,-XX:+ UseParNewGC用于伊甸园垃圾收集。
– Mikko Rantalainen
2012年1月17日在7:02
另请参阅:blogs.oracle.com/jonthecollector/entry/our_collectors
– Mikko Rantalainen
2012年1月17日在7:06
每个选项和选项的每个参数都必须在自己的行上。
–乔什·克莱姆(Josh Clemm)
2012-4-27 18:02
#5 楼
-showlocation为了使eclipse运行两次更容易,并知道您正在处理的工作空间,
Eclipse 3.6添加了一个Preferences选项来指定要显示的内容
Workspace name (shown in window title)
的效果比-showlocation
更好,原因有以下三个:无需重新启动eclipse即可生效。
您可以选择一个简短的代码。
它首先出现在透视图和应用程序名称之前。
#6 楼
如果要使用jdk6 update 14,建议使用似乎有助于提高性能的G1垃圾收集器。为此,请删除以下设置:
-XX:+ UseConcMarkSweepGC
-XX:+ CMSIncrementalMode
-XX:+ CMSIncrementalPacing
并替换为以下内容:
-XX:+ UnlockExperimentalVMOptions
-XX:+ UseG1GC
#7 楼
如果您使用的是Linux + Sun JDK / JRE 32位,请将“ -vm”更改为:-vm
[your_jdk_folder]/jre/lib/i386/client/libjvm.so
如果您使用的是Linux + Sun JDK / JRE 64bit,请更改“ -vm”到:
-vm
[your_jdk_folder]/jre/lib/amd64/server/libjvm.so
在Ubuntu 8.10和9.04上,这对我来说很好用
评论
是否要将Eclipse使用JDK作为默认环境?
–索比昂·拉文·安德森(ThorbjørnRavn Andersen)
2010-2-18在2:57
这可以用于使Eclipse使用特定/不同的JDK作为默认环境。
–Gilberto Olimpio
2011年5月25日下午2:54
#8 楼
您也可以尝试使用JRockit运行。它是为服务器优化的JVM,但是许多长时间运行的客户端应用程序(例如IDE的应用程序)在JRockit上运行得很好。 Eclipse也不例外。 JRockit没有烫发空间,因此您无需对其进行配置。可以设置一个暂停时间目标(ms),以避免长时间的gc暂停使UI停滞。
-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
评论
我过去曾经在JRockit上跑过过,跑得很好
–克雷格·安格斯(Craig Angus)
09年12月3日14:41
#9 楼
这是运行在i7 2630M 16GB RAM笔记本电脑上的Eclipse的我自己的设置,该设置已经使用了一周,没有一次崩溃,并且Eclipse 3.7可以平稳运行。-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
评论
哇16G笔记本电脑?我很好奇。那是System76吗? :D
–菲尔
2012年7月19日在21:20
#10 楼
-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
评论
谢谢,这对我的表现很有帮助(类似的设置)。但是我将最大堆大小提高到1024MB。
–杰夫·埃文斯(Jeff Evans)
2012年7月22日在18:21
#11 楼
我自己的设置(Java 1.7,修改为1.6):-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
#12 楼
Eclipse喜欢大量的RAM。至少使用-Xmx512M。更多(如果有)。#13 楼
如果您喜欢我,并且在当前的Oracle 1.6版中遇到问题,则可能要更新JDK或设置-XX:MaxPermSize。可在此处获得更多信息:http://java.dzone.com/articles/latest-java-update-fixes
#14 楼
XX:+ UseParallelGC是有史以来最棒的选择!!!#15 楼
-vmC:\ Program Files \ Java \ jdk1.6.0_07 \ jre \ bin \ client \ jvm.dll
要指定要使用的Java版本,请改用dll javaw进程的开始
#16 楼
这是我使用的(尽管我在快捷方式而不是设置文件中有它们):eclipse.exe -showlocation -vm“ C:\ Java \ jdk1.6.0_07 \ bin \ javaw.exe “ -vmargs -Xms256M -Xmx768M -XX:+ UseParallelGC -XX:MaxPermSize = 128M
评论
Helios 3.6的新的和改进的eclipse.ini设置在下面(在新答案中):stackoverflow.com/questions/142357/…令人惊讶的是,由于没有建设性而关闭的问题获得了如此高的评价...
当2008年对此类问题的最新答案是eclipsezone.com/eclipse/forums/t20732.html时,提出了此问题。由于eclipse和Java的新版本已经发布,因此答案集有所增加,后续更新使答案保持最新。结束问题将导致答案过时。我想重新表述此问题的唯一方法是将其设置为特定于版本,我认为这更糟,因为它将导致多个问题回答基本上相同的问题
同意-像这样的疯狂问题-疯狂-我告诉你-像这样的问题是网站上最有用和最有趣的!
根据关闭的原因,“我们希望答案通常包含事实,参考或特定的专业知识”。我认为结束这个问题是很困难的。让我们谨慎使用检查功能。我想说的是,如果有疑问,最好“让知识自由”并开放。