NOTE:
1. Windows下编辑eclipse.ini不要使用记事本,因为使用记事本会导致eclipse.ini中的换行符格式发生变化,应该使用notepad++或者UltraEditor一类的软件。
2. 对于-vm
参数即使有空格也不要加上引号,直接C:\Program Files\Java\jdk1.8.0_51\jre\bin\server\jvm.dll
即可。
3. 以下内容来自Eclipse Wiki。
概览
Eclipse的启动参数是由$ECLIPSE_HOME/eclipse.ini
控制。如果$ECLIPSE_HOME
未被定义,默认情况下,Eclipse安装目录下的eclipse.ini
(如果你使用的是Mac,则目录路径是Eclipse.app/Contents/MacOS
)将会被使用。
eclipse.ini
是包含Eclipse启动时的命令行参数的文本文件。当中包含的可用选项请参考此处.
注意事项:
- 每个选项和参数选择必须单独占一行。
-vmargs
之后的所有行都将作为参数传递给JVM,因此Eclipse所有的参数和选项都必须在-vmargs
前指定(就像当你使用命令行的时候)- 任何有关
-vmargs
的命令行参数都将会取代eclipse.ini
中的-vmargs
设定, 除非--launcher.appendVmargs
在eclipse.ini
中或者是命令行中被指定。(参考文档)
默认情况下eclipse.ini
和下面的内容很相似 (实际内容将会根据你的操作系统和Eclipse包而有所不同):
-startup ../../../plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar --launcher.library ../../../plugins/org.eclipse.equinox.launcher.cocoa.macosx.x86_64_1.1.100.v20110502 -product org.eclipse.epp.package.jee.product --launcher.defaultAction openFile -showsplash org.eclipse.platform --launcher.XXMaxPermSize 256m --launcher.defaultAction openFile -vmargs -Dosgi.requiredJavaVersion=1.5 -XX:MaxPermSize=256m -Xms40m -Xmx512m
另外,这个文件指定了heap空间初始值为40MB、最大值512MB,PermGen(持久代)空间最大值256MB。对某些用户而言,他们经常碰到大型项目集或者大量的第三方插件,heap的最大值为512MB可能会不够。
指定JVM
eclipse.ini
中最值得推荐的选项是为Eclipse的运行指定一个特定的JVM 。这样做可以保证你能够确定Eclipse运行所使用的JVM,并且可以隔离由于系统默认JVM变化而造成的影响。许多用户在这里犯错误,因为他们认为他们知道默认JVM将会被使用,但他们想错了。eclipse.ini
会让你明确这一点。
下面的例子演示了eclipse.ini
中-vm
选项的正确用法。
注意:-vm
选项的格式必须确保是正确无误的:
-vm
选项和它的值(路径)必须在不同的行。- 该值必须是Java可执行文件的完整的绝对或相对路径,而不仅仅是Java主目录。
-vm
选项必须在-vmargs
之前,因为所有在-vmargs
之后的参数都会直接传递到JVM中。对于32位的Eclipse可执行文件(Windows上的eclipse.exe)必须使用32位的JVM,64位的Eclipse可执行文件必须使用64位的JVM。32位的Eclipse不能与64位的JVM一同工作。
在Windows上eclipse.ini
的一个例子,这例子类似于你添加了-vm
参数以及加大了heap空间的最大值:
-startup plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.100.v20110502 -product org.eclipse.epp.package.java.product --launcher.defaultAction openFile --launcher.XXMaxPermSize 256M -showsplash org.eclipse.platform --launcher.XXMaxPermSize 256m --launcher.defaultAction openFile -vm C:\Java\JDK\1.6\bin\javaw.exe -vmargs -Dosgi.requiredJavaVersion=1.5 -Xms40m -Xmx1024m
请记住,实际的值将略有不同,具体取决于操作系统和Eclipse包。
Windows下-vm 值:
这是Windows下-vm
参数可能的例子(当然,你的javaw.exe
实际路径可能会不同) :
-vm C:\jdk1.7.0_21\bin\javaw.exe
在-vmargs
属性前加入-vm
的另一种方法是在Eclipse快捷方式属性加入(“快捷方式”选项卡里面的”目标”):
-vm C:\jdk1.7.0_21\bin\javaw.exe
或者
-vm C:\jdk1.7.0_21\jre\bin\java.exe
在某些系统,以上参数可能是无效的。如果您在启动Eclipse时遇到“Java was started but returned exit code=1”的错误,请修改-vm
参数指向jvm.dll
(实际路径可能会有所不同):
-vm C:\Development\Java\64bit\jdk1.7.0_09\jre\bin\server\jvm.dll
Linux下-vm 值:
这是Linux 下-vm
参数可能的例子(当然,你的javaw.exe
实际路径可能会不同) :
-vm /opt/sun-jdk-1.6.0.02/bin/java
Mac OS X下-vm 值:
如果你使用Mac OS X系统,你可以这样找到eclipse.ini
,在Finder中右击(或Ctrl+单击)Eclipse可执行文件,选择Show Package Contents,然后找到eclipse.ini
在Contents
下的MacOS
文件夹。
为OS X指定Java 6:
-vm /System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/bin/java
对于Mac OS X 10.7或更高版本,路径地址更改为
/Library/Java/JavaVirtualMachines/<"jdk_name_ver">/Contents/Home/...
若要更安全,确保你打算使用的JDK位于/usr/libexec/java_home,并把此路径下的/bin/Java 追加到Eclipse.ini文件。
参见
- FAQ How do I run Eclipse?
- FAQ How do I increase the heap size available to Eclipse?
- FAQ How do I increase the permgen size available to Eclipse?
这个FAQ最初发表于Official Eclipse 3.0 FAQs。Copyright 2004, Pearson Education, Inc. 保留所有权利。本文在Eclipse Public License v1.0下可用