macOS Eclipse无法找到OpenJDK

3

由于Oracle Java许可证的原因,我已经从我的macOS 10.14.3中删除了Java并安装了OpenJDK8。

AB-iMac:~ AndyBrunner$ cat .bash_profile 
export JAVA_HOME=/Applications/Java/OpenJDK/JDK1.8/Contents/Home/bin/
export PATH=$JAVA_HOME:$PATH

AB-iMac:~ AndyBrunner$ echo $JAVA_HOME
/Applications/Java/OpenJDK/JDK1.8/Contents/Home/bin/

AB-iMac:~ AndyBrunner$ echo $PATH
/Applications/Java/OpenJDK/JDK1.8/Contents/Home/bin/:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/VMware Fusion.app/Contents/Public

AB-iMac:~ AndyBrunner$ java -version
openjdk version "1.8.0_202"
OpenJDK Runtime Environment (build 1.8.0_202-b08)
Eclipse OpenJ9 VM (build openj9-0.12.1, JRE 1.8.0 Mac OS X amd64-64-Bit Compressed References 20190205_147 (JIT enabled, AOT enabled)
OpenJ9   - 90dd8cb40
OMR      - d2f4534b
JCL      - d002501a90 based on jdk8u202-b08)

但当我启动Eclipse时,会弹出“无法创建Java虚拟机”的错误提示。

需要告诉Eclipse使用OpenJDK的哪些内容?

2个回答

6
您可以在eclipse.ini文件中指定要使用的虚拟机。
在Mac OS X系统上,您可以通过在Finder中右键单击(或Ctrl + 单击)Eclipse可执行文件,选择“显示包内容”,然后在内容下的Eclipse文件夹中找到eclipse.ini。路径通常是:
/Applications/Eclipse.app/Contents/Eclipse/eclipse.ini
对于Mac OS X 10.7+的版本,位置类似于:
/Library/Java/JavaVirtualMachines//Contents/Home/bin
例如,最新的JDK 1.8(截至2015年7月)为:
/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home/bin
详情请参阅:https://wiki.eclipse.org/Eclipse.ini#-vm_value:_Mac_OS_X_Example 因此,在您的情况下:
-vm
/Applications/Java/OpenJDK/JDK1.8/Contents/Home/bin/

我发现在2021年,我们仍然不得不修改eclipse.ini文件才能让Eclipse在MacOS上启动,这让我非常恼火。在MacOS上有很多自动定位JVM的方法,如果eclipse.ini中指定的JVM由于某些原因无法找到/启动,Eclipse可以轻松地在启动时向用户显示这些JVM列表。 - Christopher Schultz

1
在bash中设置环境变量对从Finder启动的应用程序没有影响。
最简单的解决方案是将OpenJDK安装到/Library/Java/JavaVirtualMachines或$HOME/Library/Java/JavaVirtualMachines(即创建文件夹(如果不存在)并在其中提取tar文件)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接