簡體   English   中英

在安裝java 8之后,javac -version在我的mac上運行,但不在java -version上運行

[英]after installing java 8, javac -version works on my mac but not java -version

我在macbook pro OS 10.10.5上設置java 8 dev環境時遇到了一些困難

在終端我執行了以下內容:

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都應該正確運行。

此腳本使您可以在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)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM