Mic*_*Gao 8 java macos openjdk
我已经搜索了几种在Mac上更改JDK版本的方法.
$/usr/libexec/java_home
Run Code Online (Sandbox Code Playgroud)
我得到了
/Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Home
Run Code Online (Sandbox Code Playgroud)
我试过了
$export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Home
Run Code Online (Sandbox Code Playgroud)
也试过了
/usr/libexec/java_home 1.8.0_31 --exec javac -version
Run Code Online (Sandbox Code Playgroud)
然后我跑了
$echo $JAVA_HOME
Run Code Online (Sandbox Code Playgroud)
/Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Home
然后我重新检查java -version
$java -version
java version "1.7.0_67"
Java(TM) SE Runtime Environment (build 1.7.0_67-b01)
Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)
Run Code Online (Sandbox Code Playgroud)
我怎么能真正改变我的mac上的java -version.
and*_*s_a 30
要为您的shell环境将Java设置为1.8 ,请将其放在〜/ .bash_profile中:
export JAVA_HOME=`/usr/libexec/java_home -v 1.8`
Run Code Online (Sandbox Code Playgroud)
小智 7
Solution without 3rd party tools:
Run Code Online (Sandbox Code Playgroud)
将所有 JDK 保留在其默认位置,在 /Library/Java/JavaVirtualMachines 下。系统会默认选择最高版本。要在默认情况下排除 JDK,请将其 Contents/Info.plist 重命名为 Info.plist.disabled。当 $JAVA_HOME 指向它或在脚本或配置中显式引用时,该 JDK 仍然可以使用。它会被系统的 java 命令简单地忽略。系统启动器将使用具有 Info.plist 文件的那些中版本最高的 JDK。
在使用备用 JDK 的 shell 中工作时,请在现有答案(jenv 或围绕 /usr/libexec/java_home 等的自定义别名/脚本等)中选择您的方法。