从Mac中删除Java 8 JDK

Rob*_*Rob 228 java macos intellij-idea java-8

所以我前一段时间安装了JDK 8测试版以查看一些示例.我现在肯定地想,很容易在版本之间进行更改.

使用IntelliJ进行一些Play开发.出于某种原因,IntelliJ正在使用8进行编译,即使:

  • 我在Preferences中设置了编译器以使用1.6
  • 据说它通过外部构建使用SBT,但命令行的sbt工作
  • JAVA_HOME指向JDK 6.

如果我转到Java首选项页面,它确实显示已安装8,但没有选项可以卸载它,它没有看到任何其他版本.

当我这样做时which java,它告诉我/usr/bin/java和我这样做/usr/bin/java -version,它返回1.6.

注意:有点小小的,你可以使用IntelliJ和JDK7,见这里.

小智 611

我能够成功地执行以下步骤,在小牛队中取消jdk 8:

运行此命令只是删除JDK

sudo rm -rf /Library/Java/JavaVirtualMachines/jdk<version>.jdk
Run Code Online (Sandbox Code Playgroud)

如果要删除插件,请运行这些命令

sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -rf /Library/LaunchAgents/com.oracle.java.Java-Updater.plist
sudo rm -rf /Library/PrivilegedHelperTools/com.oracle.java.JavaUpdateHelper
sudo rm -rf /Library/LaunchDaemons/com.oracle.java.Helper-Tool.plist
sudo rm -rf /Library/Preferences/com.oracle.java.Helper-Tool.plist
Run Code Online (Sandbox Code Playgroud)

  • 第一个命令就足够了,不需要运行其他两个命令. (19认同)
  • 这非常糟糕,因为您还要删除"系统偏好设置"中的偏好设置面板.只需运行第一个命令,然后将其他命令退出. (4认同)
  • 需要明确的是,这是卸载所有Java的东西.如果由于某种原因想要保留不同版本的Java,除了JDK本身(第一个命令)之外不要删除任何东西. (3认同)
  • 唯一的问题是现在它不会让我安装jdk7.我运行安装程序,但命令行仍然说"没有Java运行时存在,请求安装"...它说谎,但因为它没有请求安装. (2认同)

Jon*_*T S 81

让它变得非常简单......

sudo rm -rf /Library/Java/*

sudo rm -rf /Library/PreferencePanes/Java*

sudo rm -rf /Library/Internet\ Plug-Ins/Java*
Run Code Online (Sandbox Code Playgroud)

  • 通过这种方式,您将删除所有java jdk,而不仅仅是8.小心. (7认同)
  • 这对High Sierra来说很有用.谢谢! (5认同)
  • 这个在OSX El Capitan为我工作,谢谢:) (2认同)

小智 14

在Mac OSX上管理Java版本是一场噩梦.我最近切换到使用JDK 1.7,完全从我的MacBook中删除JDK 6(我也有JDK 5的痕迹 - 这台笔记本电脑已经更新了几次).

以下是我转移到JDK 7所做的工作.

1)从Oracle下载最新版本(http://www.oracle.com/technetwork/java/javase/downloads/index.html)并安装它.

2)删除(使用rm - 如果你有备份,你可以恢复,如果你犯了错误)所有JDK6和JRE6文件.

在这个阶段,您应该看到:

% ls /Library/Java/JavaVirtualMachines/
jdk1.7.0_nn.jdk
Run Code Online (Sandbox Code Playgroud)

(没有别的)

3)在文件夹/ Library/Java/Extensions /中,您需要删除所有旧的jar文件,这些文件对应于其他Java版本.如果不这样做,您将收到有关错误版本的tools.jar的臭名昭着的消息(请参阅升级到Java7后的Builds失败,Missing Tools.jar和错误的类版本).重命名jar文件是不够的,因为Java将打开该文件夹中的每个jar - 我将其移动到子目录中.一旦你知道其他一切正常,就可以安全地删除它们.

我没有发现我需要为简单的事情设置JAVA_HOME.

注意:我刚刚尝试运行IntelliJ,除非您安装了Apple的JDK 6,否则它将无法启动(请参阅 http://youtrack.jetbrains.com/issue/IDEA-93710).Eclipse也是如此.Netbeans工作正常.

  • 在Mac上管理Java版本是一个绝对的夜晚.我能够在5分钟内安装Oracle Java 8并在Ubuntu上管理不同的Java版本.我花了几个小时试图让Oracle Java 8在OSX上运行. (3认同)

Gré*_*eph 11

使用/usr/libexec/java_home; 我发现这些别名和功能对我来说非常有用~/.profile:

alias java_ls='/usr/libexec/java_home -V 2>&1 | cut -s -d , -f 1 | cut -c 5-'
function java_use() {
    export JAVA_HOME=$(/usr/libexec/java_home -v $1)
    java -version
}
Run Code Online (Sandbox Code Playgroud)


Tha*_*you 8

我修改了Java,JDK和oracle的所有东西.我在OSX El Capitan上运行Java 8

其他答案都缺少了很多东西.这个答案涵盖了更多的基础.

再见,铲子.

sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -rf /Library/LaunchAgents/com.oracle.java.Java-Updater.plist
sudo rm -rf /Library/LaunchDaemons/com.oracle.java.Helper-Tool.plist
sudo rm -rf /Library/Preferences/com.oracle.java.Helper-Tool.plist
sudo rm -rf /System/Library/Frameworks/JavaVM.framework
sudo rm -rf /usr/bin/java
sudo rm -rf /usr/bin/javac
sudo rm -rf /usr/bin/javadoc
sudo rm -rf /usr/bin/javah
sudo rm -rf /usr/bin/javap
sudo rm -rf /usr/bin/javaws
sudo rm -rf /var/db/receipts/com.oracle.jdk8u65.bom
sudo rm -rf /var/db/receipts/com.oracle.jdk8u65.plist
sudo rm -rf /var/db/receipts/com.oracle.jre.bom
sudo rm -rf /var/db/receipts/com.oracle.jre.plist
sudo rm -rf /var/root/Library/Preferences/com.oracle.javadeployment.plist
sudo rm -rf ~/Library/Preferences/com.oracle.java.JavaAppletPlugin.plist
sudo rm -rf ~/Library/Preferences/com.oracle.javadeployment.plist
sudo rm -rf ~/.oracle_jre_usage
Run Code Online (Sandbox Code Playgroud)

  • 没有删除此文件的权限"/System/Library/Frameworks/JavaVM.framework" (2认同)
  • @Nazariy其中一些可能不需要`sudo`,但无论如何我还是用过它。长话短说:不要再安装Java。 (2认同)
  • 请查看您的文件列表。/usr/bin 中的文件是基本系统的一部分。请参阅 https://docs.oracle.com/javase/8/docs/technotes/guides/install/mac_jdk.html (2认同)
  • 这是有害的。不要删除 `/System/Library/Frameworks/JavaVM.framework` 它是 macOS 的一部分,与 Oracle 的 java 无关 (2认同)

小智 7

这是关于卸载JDK的官方文档.

http://docs.oracle.com/javase/8/docs/technotes/guides/install/mac_jdk.html#A1096903

  • 这个链接说:`cd'/ Library/Java/JavaVirtualMachines /'`,然后`sudo rm -rf YOURVERSION.jdk`,即`rm -rf jdk1.8.0_06.jdk` (3认同)

Luf*_*ffy 5

有两种方法可以做到这一点:

  1. 直接删除JDK,从Users->Library->Java->VirtualMachines->然后直接删除jdk文件夹即可卸载java.lang.

  2. 通过以下命令:(卸载java 1.8版本)

在编写命令之前,请使用以下命令确保您位于主目录中:

cd ~/

sudo rm -rf /Library/Java/JavaVirtualMachines/jdk1.8.jdk
sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -rf /Library/Application\ Support/Oracle/Java
Run Code Online (Sandbox Code Playgroud)