Debian 安装 JDK

Debian 10

OpenJDK 8 安装

1
2
3
4
5
# 更新软件
sudo apt-get update

# 搜索可用的软件包
sudo apt-cache search openjdk
1
2
3
4
5
# 安装OpenJDK8
sudo apt-get install openjdk-8-jdk

# 查看安装版本
java -version

OpenJDK 8 的安装路径

OpenJDK 8 安装完成后,其完整的安装路径是 /usr/lib/jvm/java-8-openjdk-amd64/

Debian 11

Debian 11 官方将不再对 OpenJDK 8 提供支持,建议安装 OpenJDK 11 或者 OpenJDK 17。

OpenJDK 11 安装

1
2
3
4
5
# 更新软件
sudo apt-get update

# 搜索可用的软件包
sudo apt-cache search openjdk
1
2
3
4
5
# 安装OpenJDK11
sudo apt-get install openjdk-11-jdk

# 查看安装版本
java -version

OpenJDK 11 的安装路径

OpenJDK 11 安装完成后,其完整的安装路径是 /usr/lib/jvm/java-11-openjdk-amd64/

OpenJDK 17 安装

1
2
3
4
5
# 更新软件
sudo apt-get update

# 搜索可用的软件包
sudo apt-cache search openjdk
1
2
3
4
5
# 安装OpenJDK17
sudo apt-get install openjdk-17-jdk

# 查看安装版本
java -version

OpenJDK 17 的安装路径

OpenJDK 17 安装完成后,其完整的安装路径是 /usr/lib/jvm/java-17-openjdk-amd64/

切换 OpenJDK 版本

如果在 Debian 上使用 apt-get 命令安装了多个不同版本的 OpenJDK,则可以使用以下的方式动态切换到指定的版本。

设置 Java 默认版本

运行以下命令,检查当前将哪个版本设置为了默认版本

1
sudo update-alternatives --config java

命令将会打印出一个列表,其中 * 开头的行表示当前默认使用的 Java。若希望更改默认使用的 Java,只需要输入要用作默认版本的数字,然后按 Enter 键,即可完成 Java 版本的切换。

1
2
3
4
5
6
7
8
There are 2 choices for the alternative java (providing /usr/bin/java).

Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 auto mode
1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode
2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
Press <enter> to keep the current choice[*], or type selection number:

提示

值得一提的是,还可以运行命令 java -version 检查当前使用的 Java 版本。

设置 Javac 默认版本

值得一提的是,除了更改默认的 Java 的版本之外,还可以更改 Javac 的默认版本,也就是 Java 编译器的版本。建议 Java 和 Javac 使用相同的版本号,避免因版本导致的问题。更改 Javac 默认版本与更改默认 Java 版本类似,可以运行以下命令实现。

1
sudo update-alternatives --config javac

提示

值得一提的是,还可以运行命令 javvc -version 检查当前使用的 Javac 版本。

Java 环境变量配置

某些 Java 应用程序会使用 JAVA_HOME 环境变量来确定 Java 的安装位置,因此需要设置 JAVA_HOME 环境变量。

特别注意

  1. 在配置 JAVA_HOME 环境变量时,应该始终使用设置为默认 Java 版本的安装路径,如果设置为其它 Java 版本的安装路径,可能会带来一系列的版本兼容问题。
  2. 默认 Java 版本的安装路径可以使用命令 sudo update-alternatives --config java 查找到。

JDK 8 环境变量配置

1
2
3
4
5
6
7
8
9
10
11
12
# 编辑配置文件
sudo vim /etc/profile

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

# 使配置文件生效
source /etc/profile

# 验证环境变量生效
echo $JAVA_HOME

JDK 11 环境变量配置

1
2
3
4
5
6
7
8
9
10
11
12
# 编辑配置文件
sudo vim /etc/profile

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export CLASSPATH=.:$JAVA_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin

# 使配置文件生效
source /etc/profile

# 验证环境变量生效
echo $JAVA_HOME

JDK 17 环境变量配置

1
2
3
4
5
6
7
8
9
10
11
12
# 编辑配置文件
sudo vim /etc/profile

export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/
export CLASSPATH=.:$JAVA_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin

# 使配置文件生效
source /etc/profile

# 验证环境变量生效
echo $JAVA_HOME

参考资料