簡體   English   中英

在 Ubuntu 中設置 JAVA_HOME 環境變量

[英]Setting the JAVA_HOME environment variable in Ubuntu

我在 ubuntu 上很新,在我運行的終端的某個時候:

mortar local:illustrate pigscripts/retail-recsys.pig purchase_input -f params/retail.params

但我有以下錯誤:

找不到合適的 java 安裝。 如果你已經安裝了java
請在繼續之前設置您的 JAVA_HOME 環境變量。 否則,需要將合適的 java 安裝添加到您的本地系統。

安裝 Java

在 OSX 上,從命令行運行javac 這將啟動安裝。 對於 Linux 系統,請查閱相關包管理器的文檔。

但我很確定我有 Java,所以請問我如何設置我的 JAVA_HOME 環境變量?

首先,您需要決定使用哪個已安裝的 Java 版本? 不用擔心,您可以選擇任何您擁有的 -

update-java-alternatives -l

一種“簡單”的解決方案是將其添加到“$HOME/.bashrc”中,

export JAVA_HOME=$(update-java-alternatives -l | head -n 1 | awk -F ' ' '{print $NF}')

這將選擇第一個安裝的 JDK 並使用它的 JAVA_HOME(第三個字段) - 在我的系統上

/usr/lib/jvm/java-1.7.0-openjdk-amd64
export JAVA_HOME=/usr/lib/jvm/java-7-oracle

在你的~/.bashrc文件中。

如果您希望此環境變量可供所有用戶使用並在系統啟動時使用,則可以將以下內容添加到 /etc/profile.d/java.sh(如有必要,請創建它):

export JDK_HOME=/usr/lib/jvm/java-7-oracle
export JAVA_HOME=/usr/lib/jvm/java-7-oracle

然后在終端運行:

sudo chmod +x /etc/profile.d/java.sh
source /etc/profile.d/java.sh

設置環境變量的最簡單方法是導出:

    $ export JAVA_HOME="/usr/bin"

這將臨時設置所需的變量。 您可以檢查它是否設置為:

    $ echo $JAVA_HOME

或者

    $ printenv

如果您想要更持久的解決方案,請將“export JAVA_HOME="/usr/bin"”附加到 .bashrc 或 .bash_profile 文件。

要檢查 java 是否已正確安裝:

    $ which java
    $ which javac

你應該得到類似的輸出:

    /usr/bin/java

為了讓JAVA_HOME指向活動的 jdk,添加到你的~/.bashrc

export JAVA_HOME=$(update-alternatives --query javac | sed -n -e 's/Best: *\(.*\)\/bin\/javac/\1/p')

這將動態地將$JAVA_HOME為由update-alternatives選擇的 JDK。

export JAVA_HOME=/usr/lib/jvm/java-xxx-oracle放在主目錄的 .profile 文件中。 請注意,您必須替換xxx。 您可能需要注銷並重新登錄

在 Debian/Ubuntu/Linux Mint 中,我們可以添加到 .bashrc export JAVA_HOME=$(update-java-alternatives -l | head -n 1 | sed 's/\\s//g')

通常你可以設置路徑

~/.bashrc

帶有導出 JAVA_HOME=/usr/lib/jvm/java-version

但是,您可以按照此處的說明獲取全面說明。

到目前為止, 執行此操作的最終指南在這里 您不需要像只需要調整默認的“java 替代”位置一樣設置 PATH。

你可以在終端輸入java,如果它不起作用意味着你沒有安裝java。如果它起作用,在終端輸入javac。如果javac不起作用,你應該設置java環境變量,如果它起作用,可能有問題與你的程序。

暫無
暫無

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

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