IntelliJ不会在OS X Yosemite更新后启动
我升级了我的OS X到优胜美地,现在我的IntelliJ IDE没有启动。
这是错误消息:
要打开“IntelliJ IDEA”,您需要安装旧版Java SE 6运行时。
正式推荐的解决scheme是在Mac上安装/更新JDK 1.6 ( 如果此链接在Safari中未打开,请尝试Firefox )。
修改Info.plist
将破坏应用程序的数字签名并阻止补丁更新 。
我们不build议修改Info.plist
文件在JDK 1.7或1.8下运行。
请检查此文档 ,以获取Mac上特定于Java 7和8的已知关键问题列表,这些列表会阻止JetBrains默认使用这些Java版本。
虽然Java 6已经知道安全问题并且是EOL,但是当您使用Java 6运行IntelliJ IDEA(以及基于此平台的其他IDE)时,这些问题很可能不会被利用。 Java 6不会安装浏览器插件来运行小程序,当远程攻击者使用它来运行IDE时,这将非常困难(如果不是不可能的话)。
如果您不能接受在Java 6下运行的这些(可能是最小的)风险,我们推荐使用带有捆绑的Java 8(仍然是实验性的)的特殊IDE分发版。 要获得这个版本,添加-jdk-bundled
到文件名。 自IDEA 14.1后缀改为-custom-jdk-bundled
例:
- http://download.jetbrains.com/idea/ideaIU-14.0.1.dmg (需要Java 6的版本)
- http://download.jetbrains.com/idea/ideaIU-14.0.1-jdk-bundled.dmg (捆绑Java 8的版本)
请注意,这只是一个例子,可能会链接到一个过时的版本,请使用下载页面的最新版本,点击下载 ,取消下载,从感谢下载IntelliJ IDEA页面复制直接链接 ,并添加-jdk-bundled
( -custom-jdk-bundled
14.1以后-custom-jdk-bundled
)到文件名。 只有在Java 6下运行绝对不是您的select,请注意已知问题才能使用此版本。
你需要做的是继续编辑这个文件:
/ Applications / IntelliJ IDEA 13.app/Contents/Info.plist
取代这个:
<key>JVMVersion</key> <string>1.6*</string>
有了这个:
<key>JVMVersion</key> <string>1.7*</string>
编辑:正如由intellij成员@crazycoder所说,build议完全解决这个问题的方法是安装最新的jdk 1.6
我发现在升级到Yosemite后为OS X 2014-001安装Java已经为我解决了这个问题。
或将星号更改为加号
<key>JVMVersion</key> <string>1.6+</string>
缺点是OS X会随每个IDEA开始询问您的networking权限。
但是Java 8仍然存在一些bug,特别是在Retina设备上,JetBrains仍然鼓励使用Apple的Java 6。 在优胜美地与IDEA合作的最新更新可在这里http://support.apple.com/kb/DL1572?viewlocale=zh_CN&locale=zh_CN
如果你有最新的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
OSX的JDK位于文件夹/Library/Java/JavaVirtualMachines/
。 可以有多个版本,例如1.7或1.8。
正如@CrazyCoder所指出的那样,IntelliJ需要一个1.6版本才能出现在那里,优胜美地被踢出了(如果我没有弄错的话,赞成1.7)。
要安装jdk 1.6,确实可以简单地使用@CrazyCoder推荐的苹果dmg,并由@LanceP进行确认。
作为一个自制的木桶用户,我通过安装
brew tap caskroom/versions brew cask install java6
在这之后,IntelliJ又开始运行了。
另请参阅在OSX上pipe理多个Java版本的这篇有用的文章 。