背景

Oracle如何对JDK收费,2019年4月16日,Oracle发布了新的JDK 8的更新,版本号为8u211和8u212。与以往不一样的是,新版本的许可协议从BCL换成了OTN,这就意味着,你不能在生产环境使用这个版本了。
若是你想继续使用8u211/8u212,或者以后发布的新版本,就须要给Oracle交钱了,最后一个免费版本JDK 1.8 的8u202,具体如下:

升级指南

1. apache官网下载OpenJDK,

OpenJDK协议为GPLv2,用户不修改源码的情况下可以免费使用, 地址:https://adoptium.net/temurin/releases

2. 解压

我这边下载的17版本,下载得到OpenJDK17U-jdk_x64_linux_hotspot_17.0.3_7.tar.gz
解压 tar -zxf OpenJDK17U-jdk_x64_linux_hotspot_17.0.3_7.tar.gz得到jdk-17.0.0+7目录

  1. wbw-majaro% sudo tar -zxf OpenJDK17U-jdk_x64_linux_hotspot_17.0.3_7.tar.gz
  2. wbw-majaro% ls
  3. jdk-17.0.3+7 OpenJDK17U-jdk_x64_linux_hotspot_17.0.3_7.tar.gz share typora
3. 将环境之前配置的java环境变量改为jdk-17.0.0+7里面的bin目录

例如我这边在/etc/profile里面配置的如下:

  1. #java
  2. export JAVA_HOME=/usr/local/java
  3. export JAVA_HOME
  4. export PATH=$PATH:$JAVA_HOME/bin

改为

  1. #java
  2. export JAVA_HOME=/usr/local/jdk-17.0.3+7
  3. export JAVA_HOME
  4. export PATH=$PATH:$JAVA_HOME/bin
4. 执行命令让改的配置生效
  1. sudo source /etc/profile
5. 查看java版本

出现如下提示说明成功了

  1. [root@wbw-majaro ~]# java -version
  2. openjdk version "17.0.3" 2022-04-19
  3. OpenJDK Runtime Environment Temurin-17.0.3+7 (build 17.0.3+7)
  4. OpenJDK 64-Bit Server VM Temurin-17.0.3+7 (build 17.0.3+7, mixed mode, sharing)