默认的CentOS 8存储库包括最新的两个主要Java LTS版本,即Java 8和Java 11。在本文中,我们将说明如何在CentOS 8系统上安装一个或多个Java(OpenJDK)版本以及如何通过替代方法设置默认Java。 安装OpenJDK 11 一般建议是安装最新的Java LTS版本(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运行时,该版本具有更少的依赖性和更少的系统资源,因此它更适合于服务器应用程序。 要仅安装无头OpenJDK 11,请输入: sudo yum install java-11-openjdk-headless 如果你已经安装了java-11-openjdk-devel,则无头软件包将作为依赖项安装。 安装OpenJDK 8 Java 8仍支持并广泛使用以前的Java LTS版本,如果你的应用程序需要Java 8,则可以通过键入以下命令来安装它: 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 8系统上安装了多个Java版本,则可以使用替代系统来设置在终端中键入Java时将使用哪个Java版本。 要检查将哪个Java版本设置为默认版本,请键入: java -version 如果要更改默认版本,请使用Alternatives命令: sudo alternatives --config java 输出将如下所示: 屏幕上将打印所有已安装的Java版本的列表,输入要用作默认版本的版本号,然后按Enter。 你可能还想更改默认的javac版本,运行: sudo alternatives --config java javac是用于编译Java程序的命令实用程序。 参考:在Ubuntu/Debian系统上设置默认Java版本的方法。 设置JAVA_HOME环境变量 某些Java应用程序使用JAVA_HOME环境变量来确定Java安装位置,并指定应使用哪个Java版本来运行该应用程序。参考在CentOS/Fedora/RHEL上设置JAVA_HOME的方法。 要基于每个用户设置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单元文件或命令行中设置JAVA_HOME。 例如,要使用Java 8运行Maven,可以输入: 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软件包管理器进行安装。本文还为你介绍设置默认Java版本及设置JAVA_HOME环境变量的方法。 |