文章来源:统信服务器操作系统V20系列配置JDK方案 | 统信软件-知识分享平台
章节一 背景介绍
适用环境(本文步骤,在以下版本完成验证):
- 统信服务器操作系统 A 版
uniontechos-server-20-1050a
uniontechos-server-20-1060a
uniontechos-server-20-1070a
- 统信服务器操作系统 E 版
uniontechos-server-20-1050e
uniontechos-server-20-1060e
uniontechos-server-20-1070e
注意事项:
-
如需安装非系统源中的JDK,建议使用源码安装,不建议下载 .rpm 包的方式安装,多版本间切换极为不便,且会破坏系统原有JDK环境
-
禁止卸载系统本身默认自带的JDK版本,例如使用如下命令,禁止执行,否则极可能导致依赖包被意外卸载掉,造成系统相关异常
[root@localhost ~]# rpm -e --nodeps xxx
[root@localhost ~]# yum remove xxx
下载地址:
- OpenJDK官网(完全开源和免费,任何人都可以自由使用、修改和分发)OpenJDK
特殊说明:JDK 7于2011年7月28日全面上市。基于 JDK 7 代码库的生产就绪二进制发行版现已从Oracle提供(引用地址:https://openjdk.org/projects/jdk7/)
下载链接:https://www.oracle.com/java/technologies/javase/javase7-archive-downloads.html
- Oracle JDK官网(非最新版下载需要注册oracle的免费账号就能下载)Java Downloads | Oracle
对于商业用户,需要通过My Oracle Support获取更新 https://support.oracle.com/knowledge/Middleware/2511229_1.html
https://www.oracle.com/java/technologies/javase/jdk-faqs.html
- RedHat JDK官网(需要有付费订阅账号)Log In | Red Hat IDP
区别:版本比Open JDK高,例如OpenJDK 17的版本,官网最高到17.0.2,但Oracle和RedHat的JDK,官网最高到17.0.13,提供后续更新和商业支持
- JDK是被Oracle收购了吗?
准确来说,不是JDK被Oracle收购,而是Oracle收购了开发Java的Sun Microsystems公司。以下是具体历程: 起源:Java最初是由Sun Microsystems公司开发的,并于1995年发布
收购过程:
2009年4月20日,Oracle以74亿美元的价格宣布收购Sun Microsystems公司
2010年,Oracle正式完成对Sun公司的收购
收购后的变化:
Oracle接管了Java的开发和维护工作
Sun公司原本在2006年就将Java开源,推出了OpenJDK项目
Oracle在收购后维护了两个主要JDK版本
Oracle JDK:闭源版本,需要付费许可
OpenJDK:开源版本,完全免费
商业模式转变
从2019年4月16日起,Oracle JDK开始商用收费(从JDK 8u211版本开始)
Java 17之后的版本提供了三年免费使用期的新许可模式,包括商业用途
现状:
OpenJDK作为开源项目继续发展,有多个发行版本可供选择,如:
阿里巴巴的Dragonwell
Amazon的Corretto
Eclipse的Temurin
IBM的Semeru等
因此,准确地说是Oracle通过收购Sun公司获得了Java的所有权和商标权,而不是直接收购JDK。这次收购对Java生态系统产生了深远的影响,特别是在商业模式和许可证方面
参考连接:
https://developer.aliyun.com/article/994433
https://www.redhat.com/zh/topics/application-modernization/openjdk-vs-oracle-jdk
章节二 安装统信自带的JDK版本
查看当前系统JDK版本
[root@localhost ~]# java -version
如没有安装,使用下面命令安装即可
前置条件:配置好系统安装光盘iso源,或统信内网仓库源,外网可以忽略,直接使用即可(该步骤省略,已有其他文档,或咨询统信工程师)
使用以下命令来查看可用的JDK包:
bash
[root@localhost ~]# yum clean all && yum makecache
[root@localhost ~]# yum list available java-*-openjdk
安装(以1.8为例)
bash
[root@localhost ~]# yum install java-1.8.0-openjdk
[root@localhost ~]# yum install java-1.8.0-openjdk-devel
章节三 安装OpenJDK或其他发行版JDK通用步骤
步骤1:创建JDK安装目录
可根据实际需要,修改为其他目录
bash
[root@localhost ~]# mkdir /usr/java/
步骤2:上传
通过ftp等工具,上传下载完成的JDK源码包到"步骤1"目录
步骤3:解压
由于下载的发行版不同,最终源码包的打包格式会有所不同
情况1:.gz
bash
[root@localhost ~]# tar -zxvf 文件名.tar.gz
情况2:.xz
先用 xz 解压,得到 .tar 文件
bash
[root@localhost ~]# xz -d 文件名.tar.xz
再用 tar 解开归档
bash
[root@localhost ~]# tar -xvf 文件名.tar
步骤4:更改系统环境变量
在配置文件末尾新插入一行,添加以下内容。保存并退出
bash
[root@localhost ~]# vim /etc/profile
JAVA_HOME=/usr/java/jdk-17.0.2
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=$JAVA_HOME/lib/
export JAVA_HOME
export PATH
export CLASSPATH
- JAVA_HOME 的值,为实际创建的jdk安装目录和jdk解压目录名
- 其他参数的值不用更改
步骤5:生效配置
bash
[root@localhost ~]# source /etc/profile
步骤6:查看当前设置的jdk版本是否生效
bash
[root@localhost ~]# java -version
[root@localhost ~]# javac -version
章节四 回退(OpenJDK或其他发行版JDK)
如需要更换其他版本测试,或有问题需要使用系统自带的JDK版本
步骤1:查看profile文件(根据"章节三"的安装步骤,注释操作即可)
bash
[root@localhost ~]# vim /etc/profile
定位到文件末尾
查看 "章节二" 的配置,全部删除或注释即可。
步骤2:更新配置
bash
[root@localhost ~]# source /etc/profile
步骤3:检查jdk版本
bash
[root@localhost ~]# java -version