1

如何在CentOS 7安装Java

 1 year ago
source link: https://www.myfreax.com/install-java-on-centos-7/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

如何在CentOS 7安装Java

Java是用于构建各种应用程序和系统的最流行的编程语言之一。Java可以在所有主流的操作系统和设备上运行

Updated At 23 Oct 2022 5 min read
By myfreax
如何在CentOS 7安装Java

如何在CentOS 7安装Java

Java是用于构建各种应用程序和系统的最流行的编程语言之一。Java可以在所有主流的操作系统和设备上运行。您可以在手机和游戏机上找到用Java开发的应用程序。

Java有多种不同的实现。Open JDK和Oracle Java是Java的两个主要实现,它们之间几乎没有区别,只是Oracle Java具有一些附加的商业功能。

Oracle Java许可证仅允许该软件的非商业使用,例如个人使用和开发使用。

默认的CentOS 7仓库包含两个OpenJDK软件包:Java Runtime Environment JRE和Java Development Kit JDK。

JRE由Java虚拟机JVM,类和二进制文件组成,可让您运行Java程序。JDK包含构建Java应用程序所需的JRE以及开发/调试工具和库。

如果不确定要安装哪个Java软件包,通常建议安装OpenJDK版本11。一些基于Java的应用程序可能需要特定版本的Java,因此您应该查阅应用程序文档来确定使用的java版本。

安装 OpenJDK 11

在撰写本文时,Java 11是Java的最新长期支持版本LTS。它也是CentOS 7中默认的Java开发和运行时。

以root或具有sudo权限的用户运行以下命令,以更新软件包索引并安装Open JDK 11 JDK软件包。

如果仅需要JRE,则安装java-11-openjdk-jre。如果你为了使Java运行时占用空间最少,请安装java-11-openjdk-headless

安装完成后,您可以运行命令java -version打印java版本号。至此,您已经在CentOS 7安装Java 11。JRE包含在JDK软件包中。

sudo yum install java-11-openjdk-devel
#sudo yum install java-11-openjdk-headless
java -version

安装 OpenJDK 8

以前的Java LTS版本Java 8仍然被广泛使用。 如果您的应用程序仅在Java 8上运行,则可以运行命令sudo apt install openjdk-8-jdk进行安装。

如果仅需要JRE,则安装openjdk-8-jre。如果你为了使Java运行时占用空间最少,请安装openjdk-8-jdk-headless

安装完成后,您可以运行命令java -version打印java版本号。至此,您已经在CentOS 7安装Java 8。JRE包含在JDK软件包中。

sudo yum install java-1.8.0-openjdk-devel
#sudo yum install java-1.8.0-openjdk-headless
java -version

设置Java 默认版本

如果您的CentOS 7安装多个Java版本,则可以运行命令sudo update-alternatives --config java检查将哪个版本设置为默认版本。

命令将会打印一个列表,其中*开头的行表示默认使用的Java版本。要查看当前的Java版本。你可以运行命令java -version检查当前使用的版本。

如果需要更改默认版本,请运行命令sudo update-alternatives --config java

将为您提供所有已安装的Java版本的列表。 输入您要用作默认版本的数字,然后按Enter

sudo update-alternatives --config java
There are 3 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
   1           java-1.7.0-openjdk.x86_64 (/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.261-2.6.22.2.el7_8.x86_64/jre/bin/java)
*+ 2           java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.345.b01-1.el7_9.x86_64/jre/bin/java)
   3           java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.16.1.1-1.el7_9.x86_64/bin/java)

除了更改默认的java的版本之外,你还需要更改javac的默认版本,也就是java编译器的版本。建议java和javac使用相同的版本号,避免因版本导致的问题。

修改javac默认版本与修改默认java版本类似。可以运行命令sudo update-alternatives --config javac更改javac的版本。

同样,命令将为您提供所有已安装的javac版本的列表。 输入您要用作默认版本的版本号,然后按Enter

sudo update-alternatives --config javac

JAVA HOME 环境变量

某些Java应用程序使用JAVA_HOME环境变量来确定Java安装位置。要设置JAVA_HOME变量。

请先运行命令sudo update-alternatives --config java查找Java安装路径。

在配置JAVA_HOME环境变量时,你应该始终使用设置为默认java版本的路径,如果设置为其它版本路径,就会带来因版本错误的问题。

在此教程中,安装路径分别是OpenJDK 11位于/usr/lib/jvm/java-11-openjdk-11.0.16.1.1-1.el7_9.x86_64/

OpenJDK 8位于/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.345.b01-1.el7_9.x86_64/

找到默认版本Java的安装路径后,使用你喜欢的文本编辑器打开/etc/environment文件。 /etc/environment是系统范围的配置文件,所有用户都可以使用。

在本教程中我们使用vim编辑文件/etc/environment。假设您要设置JAVA_HOME指向OpenJDK 11。

sudo vim /etc/environment
JAVA_HOME="/usr/lib/jvm/java-11-openjdk-11.0.15.0.10-3.el8.x86_64"
/etc/environment

现在已修改/etc/environment文件,保存文件并退出vim

要使更改在您当前的shell会话生效,您可以注销重新登录或者运行source命令加载环境变量。

要验证是否正确设置JAVA_HOME环境变量,可以运行命令echo $JAVA_HOME,您应该看到Java安装的路径。

source /etc/environment
echo $JAVA_HOME

卸载 Java

您可以使用apt像卸载任何其他软件包一样卸载Java。例如,要卸载jdk软件包,请输入:

sudo apt remove openjdk-11-jdk

默认的CentOS 7软件源中提供OpenJDK 11和OpenJDK 8,可以使用apt软件包管理器进行安装。如有任何疑问,请随时发表评论。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK