我在macbook pro OS 10.10.5
上设置 java 8 开发环境时遇到一些困难在终端我执行了以下内容:
brew update
brew cask install java --force
完成上述步骤后,它说:
java已成功安装!
现在我需要弄清楚如何在.bash_profile中设置我的JAVA_HOME变量。
但是我看到了以下奇怪的情况:
petesp$ javac -version
javac 1.8.0_102
但是下面发生了什么,为什么?如何在我的MAC上为Java 8设置JAVA_HOME?
petesp$ java -version
-bash: java: command not found
为什么找不到java -version?那太奇怪了。如果我使用brew安装java,我假设javac -version和java -version都应该正确运行。
答案 0 :(得分:0)
此脚本使您可以在 Java 1.7 和 Java 1.8 之间切换,还可以在bash配置文件中设置JDK。
将以下代码块插入主目录中的.bashrc或.bash_profile脚本中。
function setjdk() {
if [ $# -ne 0 ]; then
removeFromPath '/System/Library/Frameworks/JavaVM.framework/Home/bin'
if [ -n "${JAVA_HOME+x}" ]; then
removeFromPath $JAVA_HOME
fi
export JAVA_HOME=`/usr/libexec/java_home -v $@`
export PATH=$JAVA_HOME/bin:$PATH
fi
}
function removeFromPath() {
export PATH=$(echo $PATH | sed -E -e "s;:$1;;" -e "s;$1:?;;")
}
对于JDK 1.7:
#set default jdk version
setjdk 1.7.0_60
设置bash启动脚本后。您可以使用以下命令在命令行中切换版本。
切换到Java 1.7并验证您的版本。运行以下命令。
$ setjdk 1.7
$ java -version
输出:
java version "1.7.0_60"
Java(TM) SE Runtime Environment (build 1.7.0_60-b19)
Java HotSpot(TM) 64-Bit Server VM (build 24.60-b09, mixed mode)
切换回Java 1.8并验证您的版本。运行以下命令。
$ setjdk 1.8
输出:
java version "1.8.0_66"
Java(TM) SE Runtime Environment (build 1.8.0_66-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode)