文章目录
{ .ImgAlt }}

Java 是最流行的编程语言之一,它可以用来构建不同类型的应用和系统。

Java 有两种不同的实现,OpenJDK 和 Oracle Java。它们大部分都相同,除了 Oracle Java 拥有一些额外的商业特性。Oracle Java License 仅仅允许非商业使用,例如个人使用或者开发者使用。OpenJDK 是 Java 平台的开源实现。

CentOS 8 默认的软件源仓库包含了两个 Java 长期支持版本,Java 8 和 Java 11。

在这篇指南中,我们将会讲解如何在 CentOS 8 上安装一个甚至多个 Java (OpenJDK)版本,以及如何设置默认的 Java 版本。

一、安装 OpenJDK 11

通常推荐的都是安装最新的 Java 长期支持版本(JDK 11)。一些基于 Java 的应用可能要求特定版本的 Java,因此,你可能需要翻阅应用程序文档。

想要在 CentOS 8 上安装 OpenJDK 11,以 root 或者其他有 sudo 权限的用户身份运行下面的命令:

sudo yum install java-11-openjdk-devel

一旦安装完成,你可以通过检查 Java 版本号进行验证。

java -version

输出应该像下面这样:

openjdk version "11.0.4" 2019-07-16 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.4+11-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.4+11-LTS, mixed mode, sharing)

就这样!你已经在 CentOS 8 系统上成功的安装了 Java。

CentOS 8 同时也支持 OpenJDK 最小 Java 运行环境,它可以执行无 GUI 界面应用(无键盘,无鼠标,无显示器系统支持)。这个版本适合服务器应用,因为它依赖更少,并且使用更少的服务器系统资源。

想要安装 OpenJDK 11 headless 版本,输入:

sudo yum install java-11-openjdk-headless

如果你已经安装了java-11-openjdk-devel,headless 软件包将被安装为一个依赖包。

二、安装 OpenJDK 8

Java 8,前一个 Java LTS 版本,它仍然被支持,并被广泛使用。如果你的应用需要 Java 8 ,你应该输入下面的命令安装它:

腾讯云:新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
sudo yum install java-1.8.0-openjdk-devel

通过检查 Java 版本,验证它:

java -version

输出应该像下面这样:

openjdk version "1.8.0_222"
OpenJDK Runtime Environment (build 1.8.0_222-b10)
OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)

想要安装最小 java 运行环境,请安装java-1.8.0-openjdk-headless软件包。

三、设置默认的 Java 版本

如果你在你的 CentOS 系统上安装了多个 Java 版本,你可以使用 alternatives 来设置默认的 Java 版本。

想要检测默认的 Java 版本是什么,输入:

java -version

如果你想改变默认的版本,使用alternatives命令:

sudo alternatives --config java

输出应该像下面这样:

There are 2 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
   1           java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.4.11-0.el8_0.x86_64/bin/java)
*+ 2           java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el8_0.x86_64/jre/bin/java)

Enter to keep the current selection[+], or type selection number:

所有安装的 Java 版本都在屏幕上打印出来了。输入你想要设置成默认版本的数字,并且按回车。

你可能想改变默认的 javac版本:

sudo alternatives --config java

javac是用来编译 Java 程序的命令工具。

四、设置**JAVA_HOME**环境变量

JAVA_HOME环境变量在某些 Java 应用中被使用,它用来表示 Java 安装的位置,并且指定使用的 Java 版本。

想要为每个用户设置JAVA_HOME环境变量,将它添加到~/.bashrc文件,或者其他任何用户登录时会加载的配置文件中。对于系统级别的设置,使用/etc/profile.d目录下的一个脚本:

假如你想将JAVA_HOME设置成 OpenJDK 8,添加下面的行,到文件最下面: /etc/profile.d/java.sh

JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk"

想要这个修改在你现在的会话中起作用,你可以登出系统再登录,或者使用下面的source命令:

source /etc/profile.d/java.sh

验证JAVA_HOME环境变量是否被正确的设置:

echo $JAVA_HOME

输出显示 Java 安装的路径:

/usr/lib/jvm/java-1.8.0-openjdk

你也可以在应用配置文件中, systemd unit 文件中,或者启动程序时在命令行上设置JAVA_HOME

例如,想要 Mavan 使用 Java 8,你可以输入:

JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk mvn --version

输出:

...
Java version: 1.8.0_222, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el8_0.x86_64/jre
...

五、总结

CentOS 8 支持两个主要的 Java 版本,Java 8 和 Java 11,它们都可以使用yum软件包管理工具进行安装。




如果你有任何疑问,请通过以下方式联系我们:

微信:

微信群: 加上面的微信,备注微信群

QQ: 3217680847

QQ 群: 82695646 雪梦科技交流群

原文 :https://linuxize.com/post/install-java-on-centos-8/

    版权声明:本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。知识共享许可协议
阿里云: 爆款云服务器低至1折,1核1G 1M 仅17月/月

相关推荐