如何完全删除Apple的Java 6,并使Oracle Java 7成为所有应用程序的默认设置?


12

我想完全删除Apple的Java 6,并使每个程序都默认使用Oracle Java 7。例如,在Eclipse中,我不得不用eclipse.ini来为Java 7指定JAVA_HOME,为TunnelBear指定相同的名称。不过,对于Aptana来说运气不佳(它仍然需要Apple的Java)是否有办法使Oracle的Java在PATH方面成为默认设置?

macos  java 

1
我认为Java 7是PATH的默认设置,因为/ usr / bin / java应该是Java 7。然而,问题在于.apps的.plist文件中还有其他内容
user151019 2013年

Answers:


4

从Oracle下载并安装最新的Java开发工具包(JDK),将其放入/Library/Java/JavaVirtualMachines/jdk1.7.0_11.jdk(或任何最新版本)。现在,启动Terminal.app,然后输入以下命令:

  1. cd /System/Library/Java/JavaVirtualMachines (更改到正确的目录)

  2. sudo mv 1.6.0.jdk backup.1.6.0.jdk (以防万一,请保留旧的JDK,以防万一-您需要输入管理员密码才能执行此操作)

  3. sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_11.jdk 1.6.0.jdk (将新的JDK安装链接到应用程序期望旧安装的位置)

请记住,随着jdk的进一步更新,您需要将符号链接更新到新目录:

sudo rm /System/Library/Java/JavaVirtualMachines/1.6.0.jdk && sudo ln -s /Library/Java/JavaVirtualMachines/new_jdk_version /System/Library/Java/JavaVirtualMachines/1.6.0.jdk

您不应该创建1.6.x符号链接,应用程序不会期望jdk位于/ System中。如果有的话,您应该在个人资料中设置JAVA_HOME。
anddam 2014年

2

这些说明对我来说在OS X Mavericks上效果很好。

  • 删除苹果的JVM

    $ sudo rm -rf /System/Library/Java/JavaVirtualMachines/
  • 删除安装程序记录

    $ sudo rm /private/var/db/receipts/com.apple.pkg.JavaForMacOSX*
  • 删除安装程序收据(删除<dict>...</dict>引用com.apple和java 的条目)

    $ sudo emacs /Library/Receipts/InstallHistory.plist
  • 设置Java 7的符号链接

    $ sudo rm /usr/bin/java
    $ sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_17.jdk/Contents/Home/bin/java /usr/bin/java
  • 可选的符号链接 JAVA_HOME

    sudo rm /Library/Java/Home
    sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_17.jdk/Contents/Home /Library/Java/Home

0

好吧,如果您从Apple安装了最新的Java更新,则实际上应该会卸载Java6。您可以直接访问Oracle网站下载Java7。这就是我所做的。如果您的系统上只有Java 7,则应将其设为默认值。


在Lion上,Java更新没有卸载Apple的/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java
Java-

我仅使用Java 7,而在Java上获取Apple更新有些乏味。我想要它-有人设法做到了吗?(也就是说,Apple不会推送Java特定的更新;我可以直接通过Oracle进行全部操作,这很好)。
akauppi

0

我知道这是一个旧线程,但是如果有人在其计算机上安装了Adobe CS5,则必须运行Apple 1.6版的Java才能运行该套件。我正在运行需要1.7或更高版本的Eclipse。我以为它将取代Apple版本,但没有。Apple版本位于System / Library文件夹中,而Oracle版本位于Library文件夹中。

以为我会为可能需要此信息的人添加更多信息。

OS X狮子


该信息在其他答案中
user151019 '16

没有检查。抱歉。
kdd
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.