可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
I'm really confused. I've worked with Eclipse IDE a lot and now I don't understand what's happening.
I've just downloaded latest Eclipse distributive and cannot start it. I'm getting the following message box before the IDE is even loaded:
---------------------------
Eclipse
---------------------------
JVM terminated. Exit code=-1
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
-XX:MaxPermSize=256m
-Djava.class.path=D:\eclipse\plugins/org.eclipse.equinox.launcher_1.0.200.v20090520.jar
-os win32
-ws win32
-arch x86
-showsplash D:\eclipse\\plugins\org.eclipse.platform_3.3.200.v200906111540\splash.bmp
-launcher D:\eclipse\eclipse.exe
-name Eclipse
--launcher.library D:\eclipse\plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519\eclipse_1206.dll
-startup D:\eclipse\plugins/org.eclipse.equinox.launcher_1.0.200.v20090520.jar
-product org.eclipse.epp.package.jee.product
-vm C:\Program Files\Java\jre6\bin\client\jvm.dll
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
-XX:MaxPermSize=256m
-Djava.class.path=D:\eclipse\plugins/org.eclipse.equinox.launcher_1.0.200.v20090520.jar
---------------------------
ОК
---------------------------
I cannot find any additional logs. I haven't changed or modified anything. Just unzipped the archive.
Initially my eclipse.ini was:
-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
-product
org.eclipse.epp.package.jee.product
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
I thought that there is a problem with this newlines between name and value of the parameters. So I removed new lines (but according to this it's actually a wrong move). So my eclipse.ini is now looks like this and I'm able to run it:
-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
-product org.eclipse.epp.package.jee.product
--launcher.XXMaxPermSize 256M
-showsplash org.eclipse.platform
--launcher.XXMaxPermSize 256m
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
I googled for several hours. It seems only I have this problem. I believe Eclipse should work without these modifications of eclipse.ini (especially taking into account the fact they are incorrect). Any hints are much appreciated!
PS: I'm running Vista, all firewalls and antiviral software is off.
回答1:
The launcher parses each line as a separate argument, the new lines are required. After parsing,
{ "--launcher.XXMaxPermSize", "256M" }
is not the same as
{ "--launcher.XXMaxPermSize 256M" }
The first is recognized as an argument, the second isn't.
After removing the new-lines from the .ini file, none of your arguments will be recognized and the launcher resorts to defaults. Since this works for you, this implies that one of your arguments in the original .ini is preventing it from starting.
The jvm exiting with -1 is a very early error, before running any eclipse java code so the problem shouldn't be the -startup, --launcher.library, -product or -showsplash. The -Xmx, -Xms and --launcher.XXMaxPermSize are the most likely candidates. Why is there two XXMaxPermSize? (though the launcher only passes one through, so I'm not sure that matters).
回答2:
My guess is that you are running Vista 64-bit and trying to run a 32-bit Eclipse:
--launcher.library D:\eclipse\plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519\eclipse_1206.dll
with a 64-bit JVM:
-vm C:\Program Files\Java\jre6\bin\client\jvm.dll
This will cause exactly your symptoms. The JVM will exit very early, since one of the very first things it tries to do is to load native code included in Eclipse.
The solution is to either install a 32-bit JVM (and make sure it is found before the 64-bit one in your PATH), or to use a 64-bit Eclipse.
回答3:
For me Eclipse was hanging while starting up (showing splash page)
This worked for me:
Delete the .snap file in the workspace. It is located in
.metadata/.plugins/org.eclipse.core.resources
This will bring all your projects that were in the workspace (No need to re-import)
回答4:
Two suggestions:
1/ look at this eclipse.ini and try it out
2/ look for any extra space at the end of any line within the eclipse.ini: it can prevent eclipse starting normally.
I do confirm there must be newlines between name and value of the parameters.
回答5:
Have you been using a previous version of Eclipse? If so it's worth installing it in a completely different area (different workspace, etc.) Eclispe does seem to misbehave from time to time and the only solution is to reinstall. (I used to get strange errors in .metadata until I cleaned everything (after saving my code!) and reinstall.
回答6:
I have merge your idea with those find at : http://www.eclipse.org/forums/index.php?t=msg&goto=653614&S=c78decc70e6fe52540e0e2c6f4c3076f#msg_653614
And now my eclipse.ini file is :
-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
-product org.eclipse.epp.package.jee.product
--launcher.XXMaxPermSize 256M
-showsplash org.eclipse.platform
--launcher.XXMaxPermSize 256m
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
-XX:-UseCompressedOops
For the moment it seems to works
回答7:
One possible problem with your eclipse.ini file may be the jvm location, which can be the reason your eclipse didn't start. You can solve this by explicitly specifying the jvm in the -vm option after the "--launcher.XXMaxPermSize 256m" parameter.
For e.g
-vm <your JVM path>
回答8:
I had exactly the same problem. The actual issue that i see here is with the double entry "launcher.XXMaxPermSize
256M
". Once you remove one of these, the settings seem to work fine with your original configuration
回答9:
I had this problem today. Solved by removing both "launcher.XXMaxPermSize 256M " lines from eclipse.ini file.
回答10:
I installed some plugins and restarted eclipse. It was failing on startup until I added
-vm C:\env\java\jdk\jdk1_7\bin\javaw.exe
The eclipse installation was working fine before then