Java eclipse.ini未在Mac OS上检测到jvm

Java eclipse.ini未在Mac OS上检测到jvm,java,eclipse,macos,Java,Eclipse,Macos,我有一个基于v4.4.0的定制EclipseIDE。我的Mac OS(EI Capitan v10.11)中没有预装任何java。我有一个jre(1.8.020)在一个我想要启动eclipse的位置。因此,我使用vm参数编辑eclipse.ini文件 -vm /Users/abbas/Desktop/jre1.8.0_20.jre/Contents/Home/bin/java 这在-vmargs参数之前 -startup ../../../plugins/org.eclipse.equino

我有一个基于v4.4.0的定制EclipseIDE。我的Mac OS(EI Capitan v10.11)中没有预装任何java。我有一个jre(1.8.020)在一个我想要启动eclipse的位置。因此,我使用vm参数编辑eclipse.ini文件

-vm 
/Users/abbas/Desktop/jre1.8.0_20.jre/Contents/Home/bin/java
这在-vmargs参数之前

-startup
../../../plugins/org.eclipse.equinox.launcher_1.3.0.v20140415-2008.jar
--launcher.library
../../../plugins/org.eclipse.equinox.launcher.cocoa.macosx.x86_64_1.1.200.v20140603-1326
-product
com.myos.ide.package.commercial.product
--launcher.defaultAction
openFile
-vm
/Users/abbas/Desktop/jre1.8.0_20.jre/Contents/Home/bin/java
-vmargs
-Dosgi.requiredJavaVersion=1.8
-Xms40m
-Xmx512m
-XstartOnFirstThread
-Dorg.eclipse.swt.internal.carbon.smallFonts
-XX:MaxPermSize=256m
现在,当我试图通过点击.app文件来启动它时,仍然会弹出一个窗口

“要打开“WebOSIDE”,您需要安装旧版Java SE 6运行时。”

我已经验证了上面路径中的java是否有效

/Users/abbas/Desktop/jre1.8.0_20.jre/Contents/Home/bin/java -version java version "1.8.0_25" Java(TM) SE Runtime Environment (build
1.8.0_25-b17) Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)
我试过Mac High Sierra,行为也一样

有什么问题吗


更新:当我试图通过导航到WebOSIDE.app/Contents/MacOS/WebOSIDE并单击WebOSIDE来启动eclipse时,它将启动,并且它确实采用ini文件中指定的jre路径。但由于某些原因,单击.app文件不会启动

对于Mac,请安装JDK。它实际上没有向应用程序枚举JRE的方法。

默认情况下,eclipse将使用与可执行文件同名的ini文件。不确定可执行文件的名称。如果它是
WebOSIDE
,那么默认情况下,eclipse将查找
WebOSIDE.ini
文件。我并不完全了解eclipse将在何处查找该ini文件,尽管这可能取决于您的应用程序所基于的eclipse版本。目前,它似乎是
Contents/eclipse

可以使用运行可执行文件的
launcher.ini
参数更改ini文件的位置和名称(您也可以在命令行上使用此参数检查它)。我对此不太熟悉,但我认为可以将以下内容(作为示例)添加到
Contents/info.plist
文件中:

<key>Eclipse</key>
  <array>
    <string>--launcher.ini</string>
    <string>$APP_PACKAGE/Contents/Profile/eclipse.ini</string>
  <array>
日食 --启动程序 $APP_PACKAGE/Contents/Profile/eclipse.ini 如果找不到ini文件,则MacOS可能会在没有正确安装Java时提示您。避免安装遗留Java运行时,因为它可能很难摆脱


这基本上来自内存,因此请搜索有关指定ini文件位置的更多详细信息。

我认为这是使用Eclipse的旧版本(如您正在使用的版本)构建的RCP的问题。它是通过为RCP使用最新版本的Eclipse来修复的。@greg-449是否有相同的参考链接?Eclipse Bugzilla中有一些错误报告,例如。我知道我可以使用已安装的JDK来实现这一点,但想法是使用提供的JRE。我尝试了info.plist文件中的--launcher.ini参数$APP_PACKAGE/Contents/MacOS/WebOSIDE.ini,当我使用可执行文件WebOSIDE.APP/Contents/MacOS/WebOSIDE启动时,它会接受这个值。我可以用这种方式启动它,但是当我通过WebOSIDE.app启动时,它不工作,仍然会给我同样的错误。我可以确认它确实使用了launcher.ini参数,因为如果我在其中给出了错误的路径,并通过可执行文件启动,它会像前面所说的那样抛出错误。老实说,我不确定eclipse.ini文件在Mac上的位置。我知道,默认情况下,ini文件的名称应该与可执行文件的名称相同,但在去年的某个时候,它的工作方式似乎发生了很大的变化。因此,或许可以尝试重命名文件
WebOSIDE.ini