gpt4 book ai didi

java - 安装 java 8 后, javac -version 可在我的 mac 上运行,但不能在 java -version 上运行

转载 作者:太空宇宙 更新时间:2023-11-04 12:17:05 29 4
gpt4 key购买 nike

我在 macbook pro OS 10.10.5 上设置 java 8 开发环境时遇到一些困难

在终端中我执行了以下命令:

brew update
brew cask install java --force

完成上述步骤后,它会显示:

java was successfully installed!

现在我需要弄清楚如何在 .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版本?那太奇怪了。如果我使用brew安装java,我假设javac -version和java -version都应该正确运行。

最佳答案

此脚本使您能够在 Java 1.7Java 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)

关于java - 安装 java 8 后, javac -version 可在我的 mac 上运行,但不能在 java -version 上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39276643/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com