CentOS / Windows 下 JDK 安装的全面总结

无论服务器中间件的部署,还是开发环境的搭建,都依赖于 JDK。本文以 CentOS(服务器情形) 和 Windows(开发环境)为例,总结了最热门的 Hotspot 和 OpenJDK 的 JDK 8 的安装。

作者:王克锋
出处:https://kefeng.wang/2016/10/13/jdk-installation/
版权:自由转载-非商用-非衍生-保持署名,转载请标明作者和出处。

1.版本的选择

进入 2018 年,越来越多的 Java 开源框架或开发库采用 Java 8,是时候彻底放弃 Java 7 了。
厂商方面:若无特别要求,可基于市场份额考虑,采用 Hotspot;有特别要求时,可采用 OpenJDK。

1.1 Java 版本历史

https://en.wikipedia.org/wiki/Java_version_history

  • 1996-01-23: JDK 1.0 发布;
  • 1997-02-19: JDK 1.1 发布;
  • 1998-12-08: J2SE 1.2 发布;
  • 2000-05-08: J2SE 1.3 发布;
  • 2002-02-06: J2SE 1.4 发布;
  • 2004-09-30: J2SE 5.0 发布;
  • 2006-12-11: Java 6 发布;
  • 2009年: 被 Oracle 收购;
  • 2011-07-28: Java 7 发布;
  • 2014-03-18: Java 8 发布;
  • 2017-09-21: Java 9 发布;

1.2 官方支持情况

http://www.oracle.com/technetwork/java/javase/eol-135779.html

  • Java 6: 2006-12-11 发布,2015年12月终止首要支持,2018年12月结束扩展支持;
  • Java 7: 2011-07-28 发布,2019年7月终止首要支持,2022年7月结束扩展支持;
  • Java 8: 2014-03-18 发布,2022年3月终止首要支持,2025年3月结束扩展支持;
  • Java 9: 2017-09-21 发布;

1.3 JDK 市场份额(2017-05-03 数据)

google “site:plumbr.io Java version vendor”
https://plumbr.io/blog/java/java-version-and-vendor-data-analyzed-2017-edition

  • JVM 供应商:2017 年市场份额,Hotspot(Oracle/SUN) 占 84%,OpenJDK(CentOS自带) 占 14%,其他占 2%,所以建议选择 Hotspot;
  • JDK 版本:2017 年市场份额,Java6(发布于2006-04)急降至5%,Java7(发布于2011-07)缓降至30%并将继续下降,Java8(发布于2014-03)稳升至65%并将继续上升。

2 HotSpot 的安装

2.1.CentOS 环境

2.1.1 卸载已有
rpm -qa | grep -E "^jdk|openjdk" ## 查看已安装的 HotSpot/OpenJDK
sudo yum -y remove jdk1.8-1.8.0_181-fcs.x86_64 ## 根据查询结果,卸载 HotSpot
sudo yum -y remove java-1.8.0-openjdk* ## 根据查询结果,卸载 OpenJDK
2.1.2 下载与安装

首页: http://www.oracle.com/technetwork/java/javase/downloads/index.html
JDK8: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
原链:http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/jdk-8u181-linux-x64.rpm

## 参考: https://stackoverflow.com/questions/10268583/
wget --header "Cookie: oraclelicense=accept-securebackup-cookie" \
     http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/jdk-8u181-linux-x64.rpm
sudo yum -y install jdk-8u181-linux-x64.rpm ## 安装 Hotspot
2.1.3 环境配置
## sudo vim /etc/profile ## 所有用户有效
## dirname `sudo find /usr/java -name src.zip` # 获取 JAVA_HOME
export JAVA_HOME=/usr/java/jdk1.8.0_181-amd64
export PATH=$PATH:$JAVA_HOME/bin
## 环境变量 CLASSPATH 已废弃
2.1.4 参数配置
## sudo vim $JAVA_HOME/jre/lib/logging.properties ## 日志配置
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
java.util.logging.SimpleFormatter.format = %1$tT,%1$tL  %4$s  [%3$s] - %5$s%6$s%n
2.1.5 验证
## java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

2.2.Windows 环境

2.2.1 下载与安装

注意 JDK 位数,必须与 Java IDE 位数一致;
首页: http://www.oracle.com/technetwork/java/javase/downloads/index.html
JDK8: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
原链:http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/jdk-8u181-windows-x64.exe

2.2.2 环境配置
set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_181
set PATH=%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
## 环境变量 CLASSPATH 已废弃
2.2.3 验证
## java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)
2.2.4 卸载

通常,在控制面板中可成功卸载。
如果卸载 Java X Update YY (64-bit) 时会报错:找不到文件 C:\Program Files\Java\jdk1.X.0_YY\jre.msi,有两个解决办法:

2.2.4.1 真实卸载

手工删除注册表中 HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment1.X 相关项,再次安装 jdk-XuYY-windows-x64.exe,之后就可以从控制面板中彻底卸载了。

然后删除下列目录(必须以管理员身份启动 cmd.exe 再执行):

rd/s/q "%ProgramFiles%\Java"
rd/s/q "%USERPROFILE%\AppData\Roaming\Sun\Java"
rd/s/q "%USERPROFILE%\AppData\LocalLow\Sun\Java"
rd/s/q "%USERPROFILE%\AppData\LocalLow\Oracle\Java"
rd/s/q "%USERPROFILE%\AppData\Local\VirtualStore\Program Files\Java"
2.2.4.2 只是删除控制面板中条目

资料:卸载 Java 之后,如何删除在 Windows 的“卸载/删除程序”中列出的条目?

3 OpenJDK 的安装

3.1 CentOS 环境

3.1.1 卸载已有
rpm -qa | grep -E "^jdk|openjdk" ## 查看已安装的 HotSpot/OpenJDK
sudo yum -y remove jdk1.8-1.8.0_181-fcs.x86_64 ## 根据查询结果,卸载 HotSpot
sudo yum -y remove java-1.8.0-openjdk* ## 根据查询结果,卸载 OpenJDK
3.1.2 安装
yum search java-1.8.0-openjdk ## 查看可安装 OpenJDK
yum -y install java-1.8.0-openjdk ## 安装 JRE
yum -y install java-1.8.0-openjdk-devel ## 安装 JDK
3.1.3 配置
## sudo vim /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$PATH:$JAVA_HOME/bin
3.1.4 验证
## java -version
openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)

3.2 Windows 环境

3.2.1 下载与安装

下载时需要登录,可使用 Github 帐号。可采用绿色版本,解压即可。
索引页:https://developers.redhat.com/products/openjdk/download/
绿色版:https://developers.redhat.com/download-manager/file/java-1.8.0-openjdk-1.8.0.181-1.b13.redhat.windows.x86_64.zip
安装版:https://developers.redhat.com/download-manager/file/java-1.8.0-openjdk-1.8.0.181-1.b13.redhat.windows.x86_64.msi

3.2.2 配置
set JAVA_HOME=E:\Software\OpenJDK\java-1.8.0-openjdk-1.8.0.181-1.b13.redhat.windows.x86_64
set PATH=%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
3.2.3 验证
## java -version
openjdk version "1.8.0_181-1-redhat"
OpenJDK Runtime Environment (build 1.8.0_181-1-redhat-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值