伙计们 - 我在尝试从我的MAC卸载JDK时面临挑战(macOS High Sierra版本10.13.4 - 17E199)。我安装了两个JDK实例,我想卸载它们。
我按照本页列出的步骤操作:https://docs.oracle.com/javase/8/docs/technotes/guides/install/mac_jdk.html
我试图在/ Library / Java / JavaVirtualMachines目录中运行此命令,该目录抛出一个我没有权限的错误。
rm -rf jdk1.8.0_06.jdk
我是该机器的管理员,我不确定我还需要什么权限。我作为管理员和root用户尝试没有成功。
请分享您对此的看法。
导航到
/Library/Java/JavaVirtualMachines
并删除名称与以下格式匹配的目录:/Library/Java/JavaVirtualMachines/jdkmajor.minor.macro[_update].jdk
例如,要卸载8u6:
%rm -rf jdk1.8.0_06.jdk
不要尝试通过从
/usr/bin
中删除Java工具来卸载Java。此目录是系统软件的一部分,下次执行操作系统更新时,Apple将重置所有更改。
要删除系统文件,您需要在rm -rf命令之前添加sudo。
这个答案对于JDK 8是正确的,但是指出Oracle为每个JDK版本提供不同的指令会很好。对于某些版本,链接结构略有变化,但通常您可以转到https://docs.oracle.com/en/java/javase,选择JDK版本,并查看“概述”组中的“安装指南”链接。
例如:
此外,/ usr / bin中的文件不是JDK的一部分,因此您实际上并不想删除它们。在从未安装过JDK的系统上:
$ ls -l /usr/bin/java
lrwxr-xr-x 1 root wheel 74 Sep 27 17:08 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
$ java -version
No Java runtime present, requesting install.
显然,macOS包含JDK的基线版本,其中每个命令都是一个存根,只打印此消息并在GUI中弹出一个对话框。
如果要从mac中删除JDK,可以使用以下命令:
cd /Library/Java/JavaVirtualMachines/
然后使用sudo删除jdk,因为你需要root权限才能删除/ Library / Java / JavaVirtualMachines /中的jdk。 / Library / Java / JavaVirtualMachines /由root拥有。
sudo rm -rf jdk1.8.0_06.jdk