eclipse.ini无法在Mac OS上检测到jvm

时间:2019-02-26 08:14:48

标签: java eclipse macos

我有一个基于v4.4.0的自定义eclipse IDE。我的Mac OS(EI Capitan v10.11)中没有预安装任何Java。我要在其中开始eclipse的位置有一个jre(1.8.0_20)。所以,我去用vm args编辑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文件启动它时,仍然会弹出弹出窗口

"To open “WebOSIDE” you need to install the legacy Java SE 6 runtime."

我已验证上述路径中的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文件不会启动

2 个答案:

答案 0 :(得分:1)

默认情况下,eclipse将使用与可执行文件同名的ini文件。不确定可执行文件的名称是什么。如果它是WebOSIDE,则默认情况下,eclipse将查找WebOSIDE.ini文件。尽管可能取决于您的应用程序所基于的eclipse版本,但我并不完全了解eclipse在哪里查找该ini文件。当前,它似乎是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>

如果找不到ini文件,则MacOS可能会提示您是否未正确安装Java。避免安装旧版Java运行时,因为这可能很难摆脱。

这实际上是从内存中获取的,因此请搜索有关指定ini文件位置的更多详细信息。

答案 1 :(得分:0)

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