我刚刚用sudo apt-get install openjdk-6-jdk命令在Ubuntu中安装了JDK, 安装后Java bin目录在哪里?如何为该目录设置环境路径?我对Ubuntu没什么经验,有人能给我一些建议或者推荐一些好的网站供参考吗?
当前回答
如何安装java包:
使用官方的ubuntu包安装所需的java版本/版本,使用替代方案进行管理: Sudo apt install -y openjdk-8-jdk 或/和其他版本: Sudo apt install -y openjdk-11-jdk
只有当您的机器上所有软件只有一个版本时,以上答案才正确,您可以跳过使用更新选项。所以你可以在。bashrc或其他地方快速硬编码: 出口JAVA_HOME = / usr / lib / jvm / java-1.8.0-openjdk-amd64 但这是不健康的,因为以后你可能会改变版本。
设置JAVA_HOME(和JAVA_SDK, JAVA_JRE)的正确方法
正确的方法是检测update-alternative指向什么,并始终使用update-alternatives切换活动版本(如果有多个则必须使用update-alternative)。
以下是对这两者的建议:只针对特定的unix帐户或所有帐户(机器级别)。
1. 仅针对特定的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. 要在机器级别上做到这一点,对于所有的bourne shell,你需要2个步骤:
2.
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
PS:应该不需要更新$PATH,因为update-alternatives会处理到/usr/bin/的链接。 更多信息:https://manpages.ubuntu.com/manpages/trusty/man8/update-alternatives.8.html
其他回答
要设置系统范围,您需要使用
/etc/environment文件sudo gedit /etc/environment . txt
是可以定义任何环境变量的位置。它可以在整个系统范围内可见。变量定义后,系统需要重新启动。
例子:
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/"
你可以在这里找到更多信息:http://peesquare.com/blogs/environment-variable-setup-on-ubuntu/
如果要设置单个用户的JAVA_HOME / PATH,请登录自己的账号,打开.bash_profile文件
$ vi ~/.bash_profile
使用export JAVA_HOME=<path-to-java>语法设置JAVA_HOME如下所示。如果设置的路径为“/usr/java/jdk1.5.0_07/bin/java”,则设置如下:
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
OR
$ . ~/.bash_profile
验证新设置:
$ echo $JAVA_HOME
$ echo $PATH
提示:使用以下命令找出在UNIX / Linux下java可执行文件的确切路径:
$ which java
请注意文件~/。Bashrc与此类似,不同之处在于~/。bash_profile仅为Bash登录shell运行,.bashrc为每个新的Bash shell运行。
如果要设置所有用户的JAVA_HOME / PATH,需要在“/etc/profile”或“/etc/bash.”目录下设置全局配置所有用户的Bashrc文件:
# 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
OR
# . /etc/profile
它应该把java放到你的路径中,可能在/usr/bin/java.找到它最简单的方法是打开一个术语并键入哪个java。
我在Ubuntu 20.04中安装了java 11。为它设置一个JAVA_HOME。
输入this命令找出你的ubuntu版本——
swapnil@swapnil-vm:~$ lsb_release -d
Description: Ubuntu 20.04.3 LTS
输入这个命令来查找JVM——的位置
swapnil@swapnil-vm:~$ whereis jvm
jvm: /usr/lib/jvm
在您选择的任何编辑器中打开.bashrc
nano .bashrc
添加以下行——
## setting JAVA_HOME
JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export JAVA_HOME
PATH=$PATH:$JAVA_HOME/bin
export PATH
现在你可以开始了!! 打开一个新终端并输入命令——
ehco $JAVA_HOME
安装Oracle Java:
从Oracle网站下载tarball (.tar文件) 使用sudo tar -xvpzf fileName -C /installation_folder_name解压 更改文件权限和所有权 在/etc/profile中增加如下两行
export JAVA_HOME=/home/abu/Java/jdk1.8.0_45/
export PATH=$JAVA_HOME/bin:$PATH
重新启动机器,通过Java -version和javac -version检查
推荐文章
- 在Bash命令提示符上添加git分支
- JavaFX应用程序图标
- Java:强/软/弱/幻影引用的区别
- 在序列化和反序列化期间JSON属性的不同名称
- 获取Android设备名称
- Gradle代理配置
- 如何获得具有已知资源名称的资源id ?
- 在Android上将字符串转换为整数
- 为什么“System.out。”println“工作在Android?
- 在Java中什么时候使用可变参数?
- Mockito的argumentCaptor的例子
- 如何在Makefile中设置子进程的环境变量
- 我如何告诉Spring Boot哪个主类用于可执行jar?
- 如何将Java8流的元素添加到现有的列表中
- 在Java 8中是否可以转换流?