TShopping

 找回密碼
 註冊
搜索
查看: 721|回復: 0
打印 上一主題 下一主題

[CentOS] 如何在 CentOS 8 上安装 Java

[複製鏈接]
跳轉到指定樓層
1#
發表於 2023-3-8 21:47:15 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
 
Push to Facebook


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 权限的用户身份运行下面的命令:

  1. sudo yum install java-11-openjdk-devel
複製代碼

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

  1. java -version
複製代碼

输出应该像下面这样:

  1. openjdk version "11.0.4" 2019-07-16 LTS
  2. OpenJDK Runtime Environment 18.9 (build 11.0.4+11-LTS)
  3. 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 版本,输入:

  1. sudo yum install java-11-openjdk-headless
複製代碼


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

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

  1. sudo yum install java-1.8.0-openjdk-devel
複製代碼


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

  1. java -version
複製代碼

输出应该像下面这样:

  1. openjdk version "1.8.0_222"
  2. OpenJDK Runtime Environment (build 1.8.0_222-b10)
  3. OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)
複製代碼


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

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

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

  1. java -version
複製代碼

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

  1. 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版本:

  1. 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

  1. JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk"
複製代碼

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

  1. source /etc/profile.d/java.sh
複製代碼

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

  1. echo $JAVA_HOME
複製代碼

输出显示 Java 安装的路径:

  1. /usr/lib/jvm/java-1.8.0-openjdk
複製代碼

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

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

  1. JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk mvn --version
複製代碼

输出:

  1. ...
  2. 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
  3. ...
複製代碼

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


 

臉書網友討論
*滑块验证:
您需要登錄後才可以回帖 登錄 | 註冊 |

本版積分規則



Archiver|手機版|小黑屋|免責聲明|TShopping

GMT+8, 2024-4-27 19:07 , Processed in 0.062649 second(s), 25 queries .

本論壇言論純屬發表者個人意見,與 TShopping綜合論壇 立場無關 如有意見侵犯了您的權益 請寫信聯絡我們。

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表