如何在带有JDK 7的Mac OS X上运行IDEA IntelliJ?


86

我使用Mac OS X 10.8.2,并使用JDK7。现在,我下载了最新版本的IDEA IntelliJ11。但是,如果没有JDK 6,它似乎无法启动。是否有任何解决方法?

如何在具有JDK 7的Mac OS X上运行IDEA IntelliJ?


3
安装JDK 8并通过将JVMVersion值从“ / Applications / IntelliJ IDEA 13.app/Contents/Info.plist”中的1.6 *更改为1.8 *时,我遇到了类似的问题。
Mrugen Deshmukh

Answers:


74

更新:

在JDK 1.7上运行IDEA 12时(更改JVMVersion1.7*in后Info.plistLANG=en_US.UTF-8,请确保您已在环境中,请参阅相关的Java问题:

请参阅此线程以调试启动器问题。

另请注意,Mac上的GUI应用程序无法访问您的终端环境。如果您定义了一些可以在Terminal中正常运行的环境变量,则不是从Terminal运行的其他应用程序将看不到这些变量。解决此问题的方法是直接从终端启动应用程序,对于IDEA,可以使用以下命令:

open -a /Applications/IntelliJ\ IDEA\ 12.app/

目前在Mac上存在有关JDK 1.7支持的已知问题,例如缺少Retina支持,可能的闪烁,某些API未实现。为了在Mac上获得最佳体验,强烈建议在JDK 1.6下运行IDEA。它并不会阻止您将JDK 1.7用作构建和运行项目的目标。


IntelliJ IDEA 11启动器不适用于Mac上的JDK 1.7。目前,您必须已安装JDK 1.6,以便可以运行IDEA 11和更早版本。


4
那对我不起作用。当我改变JVMVersion1.7*并尝试启动IDEA 12,我仍然得到消息,我需要一个JRE 6
乔纳斯

8
这对我也不起作用。运行全新安装的Mountain Lion,Java 7 Update 10,IDEA 12仍要求Java6。java -version从Terminal运行可以正常工作。有什么想法吗?
2013年

2
视网膜问题已在Java 7u40中修复:stackoverflow.com/a/17029720/13365
neu242

2
编辑plist之后,请确保退出应用捆绑包,以避免出现烦人的提示,并在启动时间歇性挂起。创建一个代码签名证书,然后运行sudo codesign --verbose --force --sign "<CERT COMMON NAME>" /Applications/WebStorm.app/
tony19

2
@Jonas,请参阅官方JetBrains答案
CrazyCoder 2014年

68

Mac OSX Yosemite / El Capitan更新

我已经安装了IntelliJ 15 Ultimate,并且收到了相同的消息。我还安装了Java 1.7和1.8。

我在终端中使用以下步骤解决了该问题:

$ cd /Applications/IntelliJ\ IDEA\ 14.app/Contents

编辑Info.plist文件,并更改此位:

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

至:

<key>JVMVersion</key>
<string>1.8*</string>

发射后,一切都是黄金。


1
奇迹般有效。谢谢!
2014年

4
“一切都是金色的”-是的,除了现在的字体看上去绝对可怕而且令人
眼花

对于使用IntelliJ 14,OSX 10.10和Java 7或8的我来说,它冻结了我的Mac Air,并且我进行了硬重置,并且最多需要重新启动20次才能重新启动OSX。我的解决方案:卸载所有Java版本。仅从Apple安装Java 1.6(support.apple.com/kb/DL1572)。安装所需的SDK / JDK 7/8,并根据需要在IntelliJ和项目结构中对其进行配置。对于我来说,看到我的Mac Air不再启动是非常困难的时期。Oracle,Google和IntelliJ的IDEA和Mac用户的Android应该更好地传达此问题!我的时间成本:4小时。
弗雷迪(Freddy)2015年

以前,当我这样做时,我遇到了一个问题,即我修改了应用程序文件夹,Mac不允许我将钥匙串用于我的团队和svn密码。您知道现在是否会弹出此问题吗?
卡洛斯·布里比斯卡斯

1
这不是在Mac OS X上使用Java 8运行Idea的推荐方法。请查看正确的方法:youtrack.jetbrains.com/issue/IDEA-126847
Riccardo Cossu 2015年

27

使用IntelliJ 13和OS X 10.9,我可以将plist更改为1.7 *,并且它可以在Java 7上运行,而无需提示安装Java 6。


1
我刚刚在OS X 10.8.5,Oracle JDK 1.7.0_45和IntelliJ 13.0.2上尝试过,字体看起来很糟糕。现在坚持使用JRE 6!
史蒂夫·K

2
我刚刚在OS X 10.9.1上使用Oracle JDK 1.7.0_51和IntelliJ 13.0.2进行了尝试,并且字体在视网膜显示屏上看起来很棒。使用JDK 1.7.0_25时,它们看上去很模糊。有人说甲骨文在1.7.0_40中解决了这个问题。获取最新位置:oracle.com/technetwork/java/javase/downloads/...
jaredjacobs

可悲的是,破解plist会导致防火墙在IntelliJ每次加载时提示:stackoverflow.com/questions/13578062/… 哪一个更糟?是否已安装JRE6或在每次IntelliJ加载时都有提示?:)
Spyder 2014年

2
@Spyder,由于更改plist后应用程序签名会发生更改,因此您必须重新签名应用程序包以防止出现烦人的提示。对于Webstorm,我在登录钥匙串(developer.apple.com/library/mac/documentation/security/…)中创建了代码签名证书,然后运行sudo codesign --verbose --force --sign "<Cert Name>" /Applications/Webstorm.app/
tony19,2014年

3

对于仍然收到错误消息的人,必须安装Java 6。这有两个问题:

  1. Mac OS希望在应用程序Info.plist文件包含Java部分时安装jdk 1.6
  2. IntelliJ附带的Java启动器也非常想要jdk 1.6

所有你需要的是:

  1. 用显式的Java调用将原始启动器(Contents / MacOS / idea)替换为Shell脚本(可以从Info.plist的Java部分获取参数和类路径)。
  2. 从Info.plist中删除“ Java”部分

或者,您可以使用此https://github.com/wonder-mice/mac-java-launcher来自动执行操作,我相信这不仅适用于IntelliJ。


我尝试mac-java-launcher使用IntelliJ 13,但不起作用。得到了 Error: Not a java application
Wim Deblauwe

1
Wim Deblauwe,应该在新版本的mac-java-launcher中修复。
wonder.mice 2014年

2

其他人提出了很好的解决方案,但是您必须手动使用vi编辑器等来执行。相反,您可以通过Mac终端运行此命令,您会很方便:

find /Applications/IntelliJ*/*Contents/*Info.plist  -exec sed -i -e 's/string>1.6/string>1.7/' {} \;

在此处输入图片说明

几个可选提示:

  1. 如果您已安装JDK 1.8,则只需将上述命令中的1.7替换为1.8。
  2. 与往常一样,在文件夹中复制Info.plist,以防万一您想比较结果或出于某种原因而将其还原。
  3. 要验证更改是否发生,请运行以下命令:

    • grep "string>1.7" /Applications/IntelliJ*/*Contents/*Info.plist

1
谢谢,这是强制所有在Java 8上运行jetbrains应用程序的最简单方法
Sergey Lysenko
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.