【问题标题】:IntelliJ not starting after OS X Yosemite updateOS X Yosemite 更新后 IntelliJ 未启动
【发布时间】:2014-12-13 12:53:52
【问题描述】:

我将我的 OS X 升级到 Yosemite,但现在我的 IntelliJ IDE 没有启动。

这是错误信息:

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

【问题讨论】:

    标签: macos intellij-idea ide legacy


    【解决方案1】:

    你需要做的是继续编辑这个文件:

    /Applications/IntelliJ IDEA 13.app/Contents/Info.plist

    替换这个:

    <key>JVMVersion</key>
    <string>1.6*</string>
    

    用这个:

    <key>JVMVersion</key>
    <string>1.7*</string>
    

    编辑:正如intellij 成员@crazycoder 所说,完全解决此问题的推荐方法是安装最新的jdk 1.6

    【讨论】:

    • 当然你也可以尝试安装java 6或者java 8。
    • 谢谢!这也对我有用。我没有尝试安装 java 6 或 java 8。
    • Oracle 的 Java 1.7 和 1.8 JDK 在 Mac OS 上存在字体渲染问题。如果这不打扰您,那么您可以按照此处所述设置 JVMVersion。但是,如果它困扰您,请按照 Leszek Gruchala 的回答中所述安装 Java 1.6。
    • 我们不推荐这种方法。它会破坏数字签名,您将无法通过补丁更新 IDE。推荐的解决方案是install the latest JDK 1.6 version
    • 请检查我的回答。如果您能接受它,我将不胜感激,这样用户可以更轻松地找到推荐的解决方案,并了解他们在 Mac 上切换到 Java 7 或 8 后将面临的问题和问题。
    【解决方案2】:

    officially recommended solution 用于安装/更新JDK 1.6 on Mac如果此链接在 Safari 中无法打开,请尝试使用 Firefox)。

    修改Info.plist会破坏应用程序数字签名并阻止补丁更新

    我们不建议修改 Info.plist 文件以在 JDK 1.7 或 1.8 下运行。

    check this document 获取特定于 Mac 上 Java 7 和 8 的已知严重问题列表,这些问题会阻止 JetBrains 默认使用这些 Java 版本。

    虽然 Java 6 存在已知的安全问题并且已停产,但当您使用 Java 6 运行 IntelliJ IDEA(以及基于此平台的其他 IDE)时,这些问题很可能无法利用。 Java 6 没有安装浏览器插件来运行小程序,当它用于运行 IDE 时,远程攻击者很难(如果不是不可能的话)利用它。

    如果您不能接受在 Java 6 下运行的这些(可能是最小的)风险,我们建议使用捆绑了 Java 8 的特殊 IDE 发行版(仍处于试验阶段)。要获取此版本,请在文件名中添加 -jdk-bundled。自 IDEA 14.1 起,后缀已更改为 -custom-jdk-bundled

    例子:

    请注意,这只是一个例子,可能链接到一个过时的版本,请使用downloads page的最新可用版本,点击下载,取消下载,复制 感谢您下载 IntelliJ IDEA 页面的直接链接,并在文件名中添加 -jdk-bundled-custom-jdk-bundled,自 14.1 起)。 仅当您绝对不能在 Java 6 下运行时才使用此版本,请注意known issues

    【讨论】:

    • 在更新期间 IntelliJ 警告修改了 Info.plist,但在按下“忽略”后它会正常进行,所以没什么大不了的。
    • @ctapobep 取决于违反应用程序数字签名的系统安全设置,可能会阻止其网络功能或限制对系统钥匙串的访问(不再存储用于版本控制的密码等)。
    • 安装这个apple java 6后我的系统java版本(现在是1.7.55)会发生什么?
    • @hakunami - 我的 JDK 1.7 被单独留下。即它仍然是我的默认 JDK
    • IntelliJ 社区版 v14.0.1 与捆绑的 JDK 链接:download.jetbrains.com/idea/ideaIC-14.0.1.dmg
    【解决方案3】:

    我发现升级到 Yosemite 后安装 Java for OS X 2014-001 已经为我解决了。

    【讨论】:

    • 我听说这对我们办公室的很多人都有效,所以我不明白你为什么被否决(在某些时候)。
    • 这也是 El Capitan 的解决方案。
    【解决方案4】:

    或者把星号改成加号

    <key>JVMVersion</key>
    <string>1.6+</string>
    

    缺点是 OS X 会在每个 IDEA 启动时询问您的网络权限。

    但是 Java 8 仍然存在一些错误,尤其是在 Retina 设备上,JetBrains 仍然鼓励使用 Apple 的 Java 6。在 Yosemite 上与 IDEA 合作的最新更新可在此处获得 http://support.apple.com/kb/DL1572?viewlocale=en_US&locale=en_US

    【讨论】:

    • 字体渲染与 Java 6 的链接版本一样工作。我将坚持这个设置,直到 Java 8 朝这个方向改进(如果会的话)。
    【解决方案5】:

    如果你有最新的 JDK,你可以改变 info.plist 来处理这个。

    编辑 Info.plist 文件,在你的 jdk 中,例如:

    /Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Info.plist
    

    更新 JVMCapabilities 字典以具有以下值:

              <key>JVMCapabilities</key>
                <array>
                        <string>CommandLine</string>
                        <string>JNI</string>
                        <string>BundledApp</string>
                        <string>WebStart</string>
                        <string>Applets</string>
                </array>
    

    现在,尝试重新启动应用。应用程序现在应该使用您的 JDK 而不是寻找 JDK 6

    【讨论】:

    【解决方案6】:

    OSX 的 JDK 在文件夹 /Library/Java/JavaVirtualMachines/ 中。 那里可以有多个版本,例如1.7 或 1.8。

    正如@CrazyCoder 所指出的,IntelliJ 需要一个 1.6 版本,而 Yosemite 将其淘汰(如果我没记错的话,支持 1.7)。

    要安装 jdk 1.6,您确实可以简单地使用@CrazyCoder 推荐并得到@LanceP 确认的dmg from apple

    作为homebrew cask 用户,我通过以下方式安装

    brew tap caskroom/versions
    brew cask install java6
    

    此后,IntelliJ 重新启动并运行。

    另请参阅useful post,了解如何在 OSX 上管理多个 Java 版本。

    【讨论】:

      【解决方案7】:

      在 PyCharm 更新后,MacOS Catalina 版本 10.15.2 (19C57) 遇到了同样的问题。

      解决方法:我回滚到版本 2019.2 - 2019.2.5。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-12-24
        • 2014-07-24
        • 2015-05-16
        • 2014-12-16
        • 2015-07-25
        • 2015-06-24
        • 2015-01-06
        相关资源
        最近更新 更多