簡體   English   中英

設置java_home,但忽略錯誤

[英]Set java_home, but ignore error

在Mac(El-Capitan)上,我已將以下命令添加到我的bash_profile文件中:

export JAVA_HOME="$(/usr/libexec/java_home)"

這完美地設置了正確的java_home環境var。 但是,在我的一台機器上,我沒有安裝Java,也不想安裝java :)。

我有一個dotfiles存儲庫,因此在我所有的機器上,我都有相同的.bash_profile文件。 現在的問題是,在沒有Java的機器上,上面的命令輸出如下:

Unable to find any JVMs matching version "(null)". No Java runtime present, try --request to install.

現在我的問題是:如何在不更改命令含義的情況下擺脫錯誤/警告?

可能將其打包到if語句中,檢查是否實際安裝了Java? 像這樣的東西:

if ls /Library/Java/JavaVirtualMachines/j* 1> /dev/null 2>&1; then
  export JAVA_HOME="$(/usr/libexec/java_home)"
fi

這將使用ls的返回碼(由於此問題/答案: 檢查shell腳本中是否存在帶通配符的文件 )來確定是否存在以a開頭的文件或目錄(例如jdk1.8.0_92.jdkjre1.8.0_92.jre )。 並且僅當存在這樣的JDK / JRE時,它才會嘗試導出JAVA_HOME。

暫無
暫無

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

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