无法在macOS Big Sur上运行Eclipse

时间:2020-06-29 22:34:13

标签: eclipse macos

我无法在macOS Big Sur开发人员beta上运行eclipse,但出现一条错误消息,指出“无法创建Java虚拟机”。有什么办法可以解决错误

Error pic

我正在运行的Java版本: The java version I am running is showed in the pic

14 个答案:

答案 0 :(得分:15)

我有同样的问题。通过添加来解决

<string>-vm</string><string>/Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home/bin/java</string>

到/Applications/Eclipse.app/Contents/Info.plist

答案 1 :(得分:9)

TL; DR

使用此命令导出JAVA_HOME变量:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk/Contents/Home

长版

此答案适用于BigSur v11.0.1 Beta。我探讨的是您是否已经配置了.bash_profile JAVA_HOME导出内容

export JAVA_HOME=$(/usr/libexec/java_home)

然后,由于某种原因,它试图将其导入

/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home

而不是

/Library/Java/JavaVirtualMachines/**/Contents/Home

对于快速修复,我这样配置了JAVA_HOME

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk/Contents/Home

如果您一次在多个JVM之间切换,那么您可能会发现此.bashrc / .zshrc配置非常方便

    export JAVA_8_HOME="jdk1.8.0_231.jdk"
    export JAVA_11_HOME="openjdk-11.0.2.jdk"
    export JAVA_13_HOME="jdk-13.0.1.jdk"
    
        
    alias java8='export JAVA_HOME="/Library/Java/JavaVirtualMachines/$JAVA_8_HOME/Contents/Home"'
    alias java11='export JAVA_HOME="/Library/Java/JavaVirtualMachines/$JAVA_11_HOME/Contents/Home"'
    alias java13='export JAVA_HOME="/Library/Java/JavaVirtualMachines/$JAVA_13_HOME/Contents/Home"'
    
    # default to Java 8
    java8

答案 2 :(得分:5)

编辑Info.plist以设置-vm值。

  1. 安装最新的Eclipse版本,我正在使用版本2020-06
  2. 右键单击Eclipse.app
  3. 显示包装内容
  4. 使用文本编辑器打开Info.plist
  5. Eclipse键下的
  6. 添加 -vm / Library / Java / JavaVirtualMachines / jdk1.8.0_191.jdk / Contents / Home / bin / java 。注意-根据您拥有的版本编辑Java路径。您可以通过运行 / usr / libexec / java_home -V
  7. 来查看列表。

enter image description here

答案 3 :(得分:2)

为解决此问题,我删除了openJDK VM并重新安装

  1. 从以下位置删除openJDK文件夹

    / Library / Java / JavaVirtualMachines

  2. here

    重新安装openJDK
  3. 打开应用程序,然后右键单击spring suite>显示软件包内容

  4. 编辑文件Contents / info.plist。添加

<string>-vm</string><string>/Library/Java/JavaVirtualMachines/adoptopenjdk-14.jdk/Contents/Home/bin/java</string>

这应该在eclipse键内的array标签内

enter image description here

答案 4 :(得分:2)

当我运行echo $ JAVA_HOME目录时,发生了同样的事情

对java home文件进行全新的导出似乎可以解决问题, 我用过

export JAVA_HOME=/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/

似乎可以达到目的,请注意您的目录可能有所不同,我建议通过使用“ /”然后按Tab键跟踪目录来跟踪正确的目录。

答案 5 :(得分:1)

我通过自制软件解决了这个问题

brew cask install eclipse-java

答案 6 :(得分:1)

我删除了所有已安装的 Eclipse 文件,然后在 Home brew 上使用 --cask eclipse-jee 重新安装。我希望它对像过去的我一样挣扎的人有所帮助。

答案 7 :(得分:0)

确认,将下面的内容添加到Infolplist中即可。我有Oracle jdk 8并更新了以下值。 -vm / Library / Java / JavaVirtualMachines / jdk1.8.0_202.jdk / Contents / Home / bin / java

答案 8 :(得分:0)

enter image description here

在我的情况下,我使用的是旧版本的IDE,它已经死了,已经添加了JAVA_HOME变量,ini和eclipse列表并且无法正常工作,还注意到virtualbox死了,也可以启动任何VM。

-vm / Library / Java / JavaVirtualMachines / jdk1.8.0_251.jdk / Contents / Home / bin / java

答案 9 :(得分:0)

我尝试了在这个问题下发布的所有解决方案;但他们都没有为我工作。最后,我安装了最新版本的 Eclipse 2020-09 (4.17.0) 使其工作。

答案 10 :(得分:0)

我前几天升级到 Big Sur,今天早上终于跑 Eclipse 时也遇到了这个问题。

最新的 Eclipse 2020-12 版本包括其自己的 JRE (!),因此我不再遇到“无法创建 Java 虚拟机”的情况。我暂时保持 Java 版本不变,因为我只使用 Eclipse 来创建 Tomcat Web 应用程序并且不运行独立的 Java。

$ /usr/libexec/java_home 
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home

$ /usr/libexec/java_home -V
Matching Java Virtual Machines (3):
    1.8.121.13 (x86_64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
    1.8.0_121 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home
    1.7.0_60 (x86_64) "Oracle Corporation" - "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_60.jdk/Contents/Home
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home

答案 11 :(得分:0)

除了上面推荐的所有步骤之外,我还必须创建以下符号链接:

    cd /Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home/lib
    sudo ln -s ../jre/lib/server/libjvm.dylib libserver.dylib

我使用的Eclipse版本是4.4.1。 (因为经过测试可以很好地与 WebObjects 配合使用)

答案 12 :(得分:0)

我必须安装最新版本的 Eclipse 才能使其工作,因为它使用 Java 11。这是在我更新到 Big Sur 之后发生的。

答案 13 :(得分:0)

  • 第一步:卸载jdk 8
  • 第 2 步:通过 brew 安装 openjdk14
  • 第 3 步:安装 eclipse 2020-12 版本