Ubuntu安装openjdk8

1、更新软件包

#:sudo apt-get update

2、安装openjdk

#:sudo apt-get install openjdk-8-jdk

3、查看openjdk装哪了

#:update-alternatives --config java

apt-get,是一条linux命令,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。

Linux发行版中, Debian系的提供了一个update-alternatives工具,用于在多个同功能的软件,或软件的多个不同版本间选择。

比如, 系统默认安装OpenJDK, 但项目需要Oracle版的Java, 通常直接删除它会导致某些程序运行出错. 当然, 如果你通过Ubuntu的PPA安装Oracle版是不会有问题的. 你若从Oracle官网下载JDK包, 将执行程序加入PATH并设置相应环境变量, 如果只是这样, 通常某些程序的运行会提示找不到JDK.

加入PATH的位置也值得考察, 如果在默认PATH后, Java命令使用的仍然是系统的OpenJDK, 加在PATH前, 可能会覆盖系统的某些二进行程序, 毕竟, “$JAVA_HOME/bin”内并不只Java一个程序.

因此, 这里推荐使用update-alternatives小工具.

初步

update-alternatives本质上是通过建立两重软链接的方式工作的. 其在shell命令与真正的执行程序间加入匹配层。

ll /usr/bin/vim
#=> /usr/bin/vim -> /etc/alternatives/vim
ll /etc/alternatives/vim
#=> /etc/alternatives/vim -> /usr/bin/vim.basic
ll /usr/bin/vim.basic
#=> /usr/bin/vim.basic

真正的程序是/usr/bin/vim.basic, 而我们在shell中键入vim会先找到/usr/bin/vim,在找到/etc/alternatives/vim, 再找到/usr/bin/vim.basic.

比如,安装Oracle Java,在设置JAVA_HOME的环境变量并加入PATH环境变量后,并不能正常启动eclipse.

sudo update-alternatives --install /usr/bin/java java $JAVA_HOME/bin/java 100
sudo update-alternatives --remove java $JAVA_HOME/bin/java

上述命令完成建立/usr/bin/java到/etc/alternatives/java再到$JAVA_HOME/bin/java符号链接的建立. 事实上, 你可以安装多个版本的Java, 再将相应命令写入脚本, 在需要时运行脚本即可随时切换. 注意, 这同修改PATH不同, 无需重新载入.bashrc文件.

用法

安装:

sudo update-alternatives --install link name path priority [ --slave slink sname spath]

选项注释:

  • link是在/usr/bin/,/usr/local/bin/等默认PATH搜索目录
  • name是在/etc/alternatives目录中的链接名
  • path是真正的可执行程序的位置,可以在任何位置
  • priority是优先级

打印名字的相关链接:

sudo update-alternatives --display name

配置名字的相关链接:

sudo update-alternatives --config name

移除名字的相关链接:

sudo update-alternatives --remove name path

因为优先级的存在,可以为同一个name设置多个path,当删除一个path后,默认连接到slave上.

移除所有名字相关的链接:

sudo update-alternatives --remove-all name
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值