在Linux中升级Java

本文最后更新于 2023年8月22日 下午

java肯定念抓法呀!

在安装webgoat的时候遇到了Java版本问题,走了半个下午弯路之后终于成功升级了Java,特此记录。

由于在kali系统内操作,所以我的包都是基于Debian的,需要根据自己的系统更改。

要做两点:

  • 安装Java
  • 切换版本

安装Java

注意,以下所有命令的jdk文件名都需自行更改为自己下载的对应版本之名

  • 1,官网获取Java.deb 包

[官网][1]https://www.oracle.com/java/technologies/downloads/#java17

  • 2,安装jdk.deb
1
dpkg -i jdk.deb

可能会遇到依赖缺失:

1
2
dpkg: error processing package sunloginclient (–install): dependency
problems - leaving unconfigured

先用

1
apt-get -f -y install

解决路径依赖

然后重新dpkg

注:安装完默认在 /usr/lib/jvm/jdk 目录下

  • 3将 jdk 移至 /opt 目录下
1
mv /usr/lib/jvm/jdk-17 /opt/jdk-17

4、将 jdk 加入环境变量配置文件中

打开配置文件

1
vim ~/.zshrc

在配置文件中加入如下内容

1
2
3
4
#install JAVA JDK
export JAVA_HOME=/opt/jdk-17
export CLASSPATH=.:${JAVA_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

在vim中,用大写I打开插入模式,用shift 加 ctrl 加 v复制,随后输入:wq回车保存并退出

5、使变更生效

1
source ~/.zshrc

6、将 jdk 17 加入 jdk 菜单

依次执行下列代码

1
2
3
4
update-alternatives --install /usr/bin/java java /opt/jdk-7/bin/java 1
update-alternatives --install /usr/bin/javac javac /opt/jdk-7/bin/javac 1
update-alternatives --set java /opt/jdk-7/bin/java
update-alternatives --set javac /opt/jdk-7/bin/javac

变更 JDK 版本

1、更换默认版本

1
update-alternatives --config java

我有 4 个候选项可用于替换 java (提供 /usr/bin/java)。

选择自己需要的版本即可

1
2
3
4
5
6
7
8
9
10
选择       路径                                          优先级  状态
---------------------------------------------------------------------

0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 自动模式
1 /opt/jdk1.6.0_45/bin/java 300 手动模式
* 2 /opt/jdk1.8.0_241/bin/java 300 手动模式
3 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 手动模式
4 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 手动模式

要维持当前值[*]请按<回车键>,或者键入选择的编号:

拿下。


在Linux中升级Java
https://bainianlaoyao.github.io/2022/07/29/typecho-recovered-3-在Linux中升级Java/
作者
百年老妖
发布于
2022年7月29日
许可协议