m2eclipse:Eclipse在JRE中运行,但需要JDK

Ger*_*noK 41 java eclipse maven-2 m2eclipse

m2eclipse(0.10.0)和eclipse galileo(Build id:20090920-1017)有问题.

我总是收到错误消息:"Eclipse正在JRE中运行,但需要JDK".我尝试了几件事,但没有任何作用.错误消息仍然存在.以下是我尝试过的事情:

  • 在Window> Preferences> Java> Installed JREs中,我检查了JDK1.6.0_20.什么都不行

  • 在Window> Preferences> Java> Installed JRE中,我删除了所有JRE.只有已检查的JDK1.6.0_20仍然存在.什么都不行

  • 在Window> Preferences> Java> Installed JREs> Execution Environments中我选择了JavaSE-1.6并检查了JDK1.6.0_20 [完全匹配].什么都不行.

  • 在eclipse桌面启动图标的首选项中,我添加了-vm参数(C:\ Program\eclipse_galileo\eclipse\eclipse.exe -vm C:\ Program\Java\jdk1.6.0_20\bin).什么都不行.

  • 我添加了clean参数(C:\ Program\eclipse_galileo\eclipse\eclipse.exe -vm C:\ Program\Java\jdk1.6.0_20\bin -clean).什么都不行.

  • 我将-vm参数添加到eclipse.ini文件中,并在-vm后添加回车符,并在新行中添加C:/Programme/Java/jdk1.6.0_20/bin/javaw.exe.什么都不行.

  • 完成所有这些操作后,我删除了m2eclipse插件并再次安装它.什么都不行.

我尝试过的新想法:

  • 在eclipse桌面启动图标的首选项中,我将可执行文件放在最后(C:\ Program\eclipse_galileo\eclipse\eclipse.exe -vm C:\ Program\Java\jdk1.6.0_20\bin\javaw.exe).什么都不行.

  • 我在eclipse.ini中将斜杠更改为反斜杠.什么都不行.

这是我的eclipse.ini文件:

-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
-product
org.eclipse.epp.package.jee.product
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vm
C:\Programme\Java\jdk1.6.0_20\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
Run Code Online (Sandbox Code Playgroud)

是否有人有其他想法?任何帮助表示赞赏.

非常感谢你.GernoK

Jer*_*ell 26

不可思议的是,解决这个问题有没有关系斜线,反斜线,引号,空格,JRE,JDK,JVM,javaw进程,....

答案是你必须在它们之间有换行符

-vm

和路径.

所以在eclipse.ini文件中:

这不起作用:

-vm C:\java\jdk\bin\javaw.exe
Run Code Online (Sandbox Code Playgroud)

但这会:

-vm
C:\java\jdk\bin\javaw.exe
Run Code Online (Sandbox Code Playgroud)


小智 13

MARIO-ORTEGON回答是这个问题的正确答案.您唯一需要做的就是在eclipse.ini中的-product org.eclipse.epp.package.jee.product部分下移动"-vm C:\ java\jdk\bin\javaw.exe"这一行.像这样:-product org.eclipse.epp.package.jee.product -vm C:\ java\jdk\bin\javaw.exe保存并重新启动eclipse.错误将消失.


Dan*_*iar 11

我认为这些是编辑eclipse.iniSTS.ini文件时所需的答案:

很多人犯这些错误是因为他们做出了某些假设(这是不正确的):

  1. 错误#1:在同一行中写入参数.与JVM命令行不同,Eclipse期望每个参数都放在eclipse.ini文件的不同行中.最常见的错误之一是(应该用2个单独的行写成):

    -vm c:/Java/jdk1.6.0_31/bin/javaw.exe

  2. 错误#2:以错误的顺序编写-vm和-vmargs.顺序很重要.该 -vmargs有之前把 -vm.为什么?因为一旦指定了 -vm,就会完全指定VM,并忽略其余的-vmargs.

  3. 错误#3:如果你不改变它,假设eclipse.ini将保持不变.某些插件安装可能具有自动配置(在重新启动后自动更改eclipse.ini文件或其他.ini配置文件,例如STS.ini,如果您使用的是SpringSource Tool Suite),他们会在之前不加选择地附加 -vm.-vmargs.检查 -vm -vmargs的双重发生.

  4. 错误#4:指定JVM的路径,而不是指定-vm时的二进制文件.Eclipse期望Java JVM二进制文件,而不仅仅是JAVA_HOME路径,例如 -vm c:/Java/jdk1.6.0_31/bin/javaw.exe,而不仅仅是 -vm c:/Java/jdk1.6.0_31

对于原始问题,似乎错误#2是原因.在-vmargs之后,你应该将-vm移到最后,而不是那个:

-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
-product
org.eclipse.epp.package.jee.product
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
-vm
C:\Programme\Java\jdk1.6.0_20\bin\javaw.exe
Run Code Online (Sandbox Code Playgroud)

  • 实际上..如果我在-vmargs之后有-vm,它会被-vmargs取代,如果你看一下运行时配置就可以看到它.它只适用于-vm之前的-vmgs,后产品.使用eclipse helios. (3认同)
  • 如果-vm选项在-vmargs之后,则无法初始化Kepler,vm (2认同)

Mar*_*gón 2

我认为你必须明确地将可执行文件添加到 -vm 参数中:

C:\Programme\eclipse_galileo\eclipse\eclipse.exe -vm C:\Programme\Java\jdk1.6.0_20\bin\javaw
Run Code Online (Sandbox Code Playgroud)

关于ini文件,取决于完整的内容。你的 ini 文件包含什么?