安装Java8后,javac-version可以在我的mac上工作,但不能在java-version上工作
我在macbook pro操作系统10.10.5上设置java 8开发环境时遇到一些困难 在终端中,我执行了以下操作:安装Java8后,javac-version可以在我的mac上工作,但不能在java-version上工作,java,macos,jvm,homebrew,Java,Macos,Jvm,Homebrew,我在macbook pro操作系统10.10.5上设置java 8开发环境时遇到一些困难 在终端中,我执行了以下操作: brew update brew cask install java --force 上述步骤完成后,它说: java已成功安装 现在我需要弄清楚如何在.bash\u配置文件中设置JAVA\u主变量 但我看到了以下奇怪的情况: petesp$ javac -version javac 1.8.0_102 但是下面到底发生了什么,为什么?如何在MAC for JAVA 8上
brew update
brew cask install java --force
上述步骤完成后,它说:
java已成功安装
现在我需要弄清楚如何在.bash\u配置文件中设置JAVA\u主变量
但我看到了以下奇怪的情况:
petesp$ javac -version
javac 1.8.0_102
但是下面到底发生了什么,为什么?如何在MAC for JAVA 8上设置JAVA_主页
petesp$ java -version
-bash: java: command not found
为什么找不到java版本?这太奇怪了。如果我使用brew安装java,我假设javac-version和java-version都应该正确运行。此脚本允许您在Java1.7和Java1.8之间切换,并在bash配置文件上设置JDK 在主目录中的.bashrc或.bash_配置文件脚本中插入以下代码块
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
$ setjdk 1.8
输出:
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 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)
切换回Java1.8并验证您的版本。运行以下命令
$ setjdk 1.7
$ java -version
$ setjdk 1.8
输出:
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 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)
此脚本使您能够在Java1.7和Java1.8之间切换,并在bash配置文件上设置JDK 在主目录中的.bashrc或.bash_配置文件脚本中插入以下代码块
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
$ setjdk 1.8
输出:
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 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)
切换回Java1.8并验证您的版本。运行以下命令
$ setjdk 1.7
$ java -version
$ setjdk 1.8
输出:
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 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在你的道路上吗?你安装了JRE吗?奇怪的是#出现在错误输出中。
哪个javac
和哪个java
的输出是什么?哦,不,那是我的评论@JasonC-当我运行哪个javac
时,哪个java
没有输出,它返回:/usr/bin/javac
,但是运行哪个java
它不会返回路径中的任何东西?你安装了JRE吗?奇怪的是#出现在错误输出中。哪个javac
和哪个java
的输出是什么?哦,不,那是我的评论@JasonC-当我运行哪个javac
时,哪个javac
没有输出,它返回:/usr/bin/javac
,但是运行哪个java
它不返回我需要运行的任何东西。bash_profile?不确定这是如何在mac上完成的。我试图运行setjdk 1.8,但未找到输出命令。
@user836087您需要将其添加到./bash_配置文件中。我这样做了。它不起作用<代码>setjdk 1.8-bash:setjdk:未找到命令@user836087 Ok。试着运行这个:export JAVA_HOME=/usr/libexec/JAVA_HOME-v1.8
@user836087 Ok。一旦删除,就无法检索。我想,你需要重新开始。下载jdk并重新安装。我需要运行.bash\u配置文件吗?不确定这是如何在mac上完成的。我试图运行setjdk 1.8,但未找到输出命令。
@user836087您需要将其添加到./bash_配置文件中。我这样做了。它不起作用<代码>setjdk 1.8-bash:setjdk:未找到命令@user836087 Ok。试着运行这个:export JAVA_HOME=/usr/libexec/JAVA_HOME-v1.8
@user836087 Ok。一旦删除,就无法检索。我想,你需要重新开始。下载jdk并重新安装。