我刚用sudo apt-get install openjdk-6-jdk
命令在Ubuntu中安装了JDK,在安装后Java的bin
目录位于哪里?我该如何设置该目录的环境路径?我对Ubuntu有很少的经验,有人可以给一些建议或者提供参考网站吗?
我刚用sudo apt-get install openjdk-6-jdk
命令在Ubuntu中安装了JDK,在安装后Java的bin
目录位于哪里?我该如何设置该目录的环境路径?我对Ubuntu有很少的经验,有人可以给一些建议或者提供参考网站吗?
请按照以下方式设置环境变量
编辑系统路径文件 /etc/profile
sudo gedit /etc/profile
在结尾添加以下行:JAVA_HOME=/usr/lib/jvm/jdk1.7.0
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export JRE_HOME
export PATH
然后注销并重新登录Ubuntu以设置路径...
Java通常安装在/usr/java
目录下,您需要定位已安装的版本并执行以下操作:
假设您正在使用bash shell(如果您刚开始学习,建议使用bash而不是其他shell),您可以直接输入bash命令启动它。
编辑您的~/.bashrc
文件,并添加以下路径:
例如,使用vi编辑~/.bashrc
文件:
插入以下行:
export JAVA_HOME=/usr/java/<your version of java>
export PATH=${PATH}:${JAVA_HOME}/bin
在保存更改后,退出并重新启动您的bash或只需键入bash以启动新的shell。
键入export
以确保路径正确。
键入java -version
以确保Java可访问。
Ubuntu会将openjdk6安装到/usr/lib/jvm/java-6-openjdk
路径下,因此您将在/usr/lib/jvm/java-6-openjdk/bin
路径下拥有bin文件。通常情况下,Java及其相关可执行文件的类路径会自动设置。
/usr/lib/jvm/default-java
,对吗? - Brennan为单个用户设置JAVA_HOME / PATH,请登录您的帐户并打开 .bash_profile 文件
$ vi ~/.bash_profile
使用以下语法设置JAVA_HOME:export JAVA_HOME=<path-to-java>
。如果您的路径设置为 /usr/java/jdk1.5.0_07/bin/java,请按如下方式设置:
export JAVA_HOME=/usr/java/jdk1.5.0_07/
export JAVA_HOME=/usr/java/jdk1.5.0_07/bin/java
请将PATH设置为以下内容:
export PATH=$PATH:/usr/java/jdk1.5.0_07/bin
根据您的设置随意替换 /usr/java/jdk1.5.0_07。保存并关闭文件。注销并重新登录即可查看新更改。或者,输入以下命令立即激活新的路径设置:
$ source ~/.bash_profile
或者
$ . ~/.bash_profile
验证新的设置:
$ echo $JAVA_HOME
$ echo $PATH
提示:使用以下命令在UNIX/Linux下查找Java可执行文件的确切路径:
which java
$ which java
请注意,文件~/.bashrc类似,但有一个例外,即~/.bash_profile仅针对Bash登录shell运行,而.bashrc则适用于每个新的Bash shell。# vi /etc/profile
接下来请按照以下方式设置PATH/JAVA_PATH变量:
export PATH=$PATH:/usr/java/jdk1.5.0_07/bin
export PATH=$PATH:/usr/java/jdk1.5.0_07/bin
保存并关闭文件。再次输入以下命令以立即激活路径设置:
# source /etc/profile
或者
# . /etc/profile
您需要设置$JAVA_HOME
变量。
在我的情况下,当我设置Maven时,我必须将它设置到JDK安装的位置。
首先找出JAVA安装的位置:
$ whereis java
Java:/usr/bin/java /usr/share/java /usr/share/man/man1/java.1.gz
现在深入了解:
$ ls -l /usr/bin/java
lrwxrwxrwx 1 root root 46 Aug 25 2018 /etc/alternatives/java -> /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
深入挖掘:
$ ls -l /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
-rwxr-xr-x 1 root root 6464 Mar 14 18:28 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
因为它没有被引用到任何其他目录,所以我们将使用它。
使用nano打开/etc/environment
:
$ sudo nano /etc/environment
添加以下内容
JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
export JAVA_HOME
使用以下命令重新加载 PATH:
$. /etc/environment
现在:
$ echo $JAVA_HOME
这是您的输出:
/usr/lib/jvm/java-1.8.0-openjdk-amd64
我参考的来源:
sudo update-alternatives --config java
之后
$gedit ~/.bashrc
在文件中添加以下行:
JAVA_HOME=/usr/lib/jvm/YOUR_JAVA_VERSION
export PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME
您可以使用以下命令获取您的Java版本:
java -version
/etc/environment
文件sudo gedit /etc/environment
。这是您可以定义任何环境变量的位置。它可以在整个系统范围内可见。定义变量后,需要重新启动系统。sudo gedit /etc/environment
添加如下内容:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
JAVA_HOME="/opt/jdk1.6.0_45/"
使用官方的Ubuntu软件包,通过alternatives来管理,安装所需的Java版本:
sudo apt install -y openjdk-8-jdk
或/和其他版本:
sudo apt install -y openjdk-11-jdk
上述答案仅适用于您的计算机上所有软件只有一个版本,可以跳过更新alternatives。因此,您可以快速硬编码在.bashrc或其他地方中:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
但这不是健康的方式,因为之后您可能会更改版本。
正确的方法(在有多个版本时必须执行),是检测update-alternative指向的内容,并始终使用update-alternatives切换活动版本。
以下是针对特定Unix帐户或所有帐户(机器级别)的建议。
如果您没有权限在机器级别执行此操作,请使用此选项。
cat <<'EOF' >>~/.bashrc
export JAVA_HOME=$(update-alternatives --query java | grep Value | cut -d" " -f2 | sed 's!\(\/.*\)jre\(.*\)!\1!g')
export JDK_HOME=${JAVA_HOME}
export JRE_HOME=${JDK_HOME}/jre/
EOF
2.a
cat <<'EOF' | sudo tee /etc/profile.d/java_home_env.sh >/dev/null
export JAVA_HOME=$(update-alternatives --query java | grep Value | cut -d" " -f2 | sed 's!\(\/.*\)jre\(.*\)!\1!g')
export JDK_HOME=${JAVA_HOME}
export JRE_HOME=${JDK_HOME}/jre/
EOF
由于您的 Shell 可能默认未设置为交互模式,因此您可能还需要执行以下操作:
2.b
cat <<'EOF' | sudo tee -a /etc/bash.bashrc >/dev/null
if [ -d /etc/profile.d ]; then
for i in /etc/profile.d/*.sh; do
if [ -r $i ]; then
. $i
fi
done
unset i
fi
EOF
注意:不需要更新$PATH,因为update-alternatives会处理到/usr/bin/的链接。
更多信息请参见:https://manpages.ubuntu.com/manpages/trusty/man8/update-alternatives.8.html
Type
sudo gedit .bashrc
Type below code in new line
export JAVA_HOME=enter_java_path_here
export PATH=$JAVA_HOME/bin:$PATH
eg: export JAVA_HOME=/home/pranav/jdk1.8.0_131
export PATH=$JAVA_HOME/bin:$PATH
Type
source ~/.bashrc
in terminal
export PATH=${JAVA_HOME}/bin:${PATH}
,这样就更新了版本。我认为这里左到右的优先级起作用了。 - Ridhuvarshan