如何设置Homebrew安装的Java路径?

Ébe*_*aac 8 java macos homebrew path

我的MacBook(OS X 10.11 El Capitan)中安装了Java 9。当我需要Java 8时,我已经使用Homebrew安装了它。

$ brew cask install java8
Run Code Online (Sandbox Code Playgroud)

但是,终端中的Java版本仍为9。

$ java -version
java version "9"
Java(TM) SE Runtime Environment (build 9+181)
Java HotSpot(TM) 64-Bit Server VM (build 9+181, mixed mode) 
Run Code Online (Sandbox Code Playgroud)

当前Java的安装位置似乎在 /System/Library/Frameworks/.../Commands

$ ls -la /usr/bin/java
lrwxr-xr-x  1 root  wheel  74 Sep 23  2017 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
Run Code Online (Sandbox Code Playgroud)

自制软件似乎已在其中安装了Java 8

/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/bin/
Run Code Online (Sandbox Code Playgroud)

当然,我可以将上述路径添加到PATH环境变量中~/.profile,但是我想知道是否存在更健壮的方法来为较旧的Java版本设置路径。

Edg*_*r H 11

我使用Maarten Mulders建议的方法。

我在bash配置文件(.bash_profile主目录中的文件)中添加了以下内容。

alias j9="export JAVA_HOME=`/usr/libexec/java_home -v 9`; java -version"
alias j8="export JAVA_HOME=`/usr/libexec/java_home -v 1.8`; java -version"
alias j7="export JAVA_HOME=`/usr/libexec/java_home -v 1.7`; java -version"
Run Code Online (Sandbox Code Playgroud)

当我想更改为Java版本时,只需j7在终端中执行即可。