我真的很困惑。我经常使用Eclipse IDE,现在我不明白发生了什么。
我刚刚下载了最新的Eclipse分发版,无法启动它。在IDE加载之前,我收到以下消息框:
---------------------------
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
---------------------------
ОК
---------------------------
我找不到任何其他日志。我没有改变或修改任何东西。只需解压缩档案。
最初我的eclipse.ini是:
-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
我认为这些参数的名称和值之间的换行存在问题。所以我删除了新行(但根据this,这实际上是一个错误的举动)。所以我的eclipse.ini现在看起来像这样我能够运行它:
-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
我用谷歌搜索了几个小时。似乎只有我有这个问题。我相信Eclipse应该在没有eclipse.ini的这些修改的情况下工作(特别是考虑到它们是不正确的事实)。任何提示都非常感谢!
PS:我正在运行Vista,所有防火墙和抗病毒软件都已关闭。
答案 0 :(得分:5)
我的猜测是你运行Vista 64位并尝试运行32位Eclipse:
--launcher.library D:\eclipse\plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519\eclipse_1206.dll
使用64位JVM:
-vm C:\Program Files\Java\jre6\bin\client\jvm.dll
这将导致您的症状。 JVM将很早退出,因为它尝试做的第一件事就是加载Eclipse中包含的本机代码。
解决方案要么安装32位JVM(并确保在PATH中的64位JVM之前找到它),要么使用64位Eclipse。
答案 1 :(得分:4)
启动程序将每一行解析为一个单独的参数,新行是必需的。解析后,
{ "--launcher.XXMaxPermSize", "256M" }
与
不同{ "--launcher.XXMaxPermSize 256M" }
第一个被认为是一个参数,第二个被认为是。
从.ini文件中删除新行后,将不会识别您的任何参数,并且启动程序将转换为默认值。由于这适用于您,这意味着原始.ini中的一个参数阻止它启动。
jvm退出-1是一个非常早期的错误,在运行任何eclipse java代码之前,所以问题不应该是-startup, - launcher.library,-product或-showsplash。 -Xmx,-Xms和--launcher.XXMaxPermSize是最有可能的候选者。为什么有两个XXMaxPermSize? (虽然发射器只通过一个,所以我不确定这是否重要。)
答案 2 :(得分:2)
对我来说,Eclipse在启动时挂起(显示启动页面)
这对我有用: 删除工作区中的 .snap 文件。它位于 的 .metadata / .plugins / org.eclipse.core.resources 强>
这将带来工作区中的所有项目(无需重新导入)
答案 3 :(得分:1)
两个建议:
1 /看看this eclipse.ini然后尝试一下 2 /在eclipse.ini中的任何一行的末尾寻找任何额外的空间:它可以防止eclipse正常启动。
我确认参数的名称和值之间必须有换行符。
答案 4 :(得分:1)
您是否使用过以前版本的Eclipse?如果是这样,值得将它安装在一个完全不同的区域(不同的工作空间等),Eclispe似乎不时会出现行为异常,唯一的解决方案就是重新安装。 (我曾经在.metadata中遇到奇怪的错误,直到我清理了所有内容(保存我的代码之后!)并重新安装。
答案 5 :(得分:1)
我已将您的想法与以下内容合并:http://www.eclipse.org/forums/index.php?t=msg&goto=653614&S=c78decc70e6fe52540e0e2c6f4c3076f#msg_653614
现在我的eclipse.ini文件是:
-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
目前似乎有效
答案 6 :(得分:1)
eclipse.ini文件的一个可能问题可能是jvm位置,这可能是你的eclipse无法启动的原因。您可以通过在“--launcher.XXMaxPermSize 256m”参数之后在-vm选项中显式指定jvm来解决此问题。
例如
-vm <your JVM path>
答案 7 :(得分:0)
我有完全相同的问题。我在这里看到的实际问题是双重条目“launcher.XXMaxPermSize 256M “。一旦删除其中一个,设置似乎与原始配置一起正常工作
答案 8 :(得分:0)
我今天遇到了这个问题。通过从eclipse.ini文件中删除“launcher.XXMaxPermSize 256M”行解决。
答案 9 :(得分:0)
我安装了一些插件并重新启动了eclipse。在我添加
之前,它在启动时失败了 -vm C:\env\java\jdk\jdk1_7\bin\javaw.exe
在此之前,eclipse安装工作正常