介绍

本文介绍如何在 CentOS 7(6/6.5)、 Fedora、RHEL 上安装 Java。Java是一个流行的软件平台,允许您运行Java应用程序。

本文涵盖了以下Java版本的安装:

  • OpenJDK 8
  • Oracle Java 8

先决条件

在开始之前,您应该有一个能够执行 root 权限命令的用户账户。

Java的变化

Java平台有三个不同版本:标准版(SE)、企业版(EE)和微型版(ME)。本文主要关注Java SE。

可以安装两个不同的Java SE包:Java运行时环境(JRE)和Java Development Kit(JDK)。JRE是Java虚拟机(JVM)的一种实现,它允许您运行已编译的Java应用程序和applet。JDK包括JRE及开发和编译Java应用所需的其他软件。

还有两种不同的Java实现:OpenJDK 和 Oracle Java。这两种实现都基于相同的代码,但 OpenJDK(Java的参考实现)是完全开源的,而Oracle Java包含一些专有代码。

您可以在单个系统上安装各种版本的Java,但大多数人只需要安装一个版本。考虑到这一点,请尝试仅安装运行或开发应用程序所需的Java版本。

安装OpenJDK 8

本节介绍如何使用 dnf 包管理器安装预构建的OpenJDK 8 JRE和JDK包,这类似于Ubuntu / Debian的apt-get。

安装OpenJDK 8 JRE

要使用 dnf 安装OpenJDK 8 JRE,请运行以下命令:

$ sudo dnf install java-1.8.0-openjdk

在确认提示下,输入 y 然后 RETURN 继续安装。

安装OpenJDK 8 JDK

要使用 dnf 安装OpenJDK 8 JDK,请运行以下命令:

$ sudo dnf install java-1.8.0-openjdk-devel

在确认提示下,输入 y 然后 RETURN 继续安装。

安装Oracle Java 8

这一部介绍如何安装 Oracle Java 8 JRE 和 JDK(64位)。注意:在安装Oracle Java之前,您必须接受 Java SE 的 Oracle 二进制代码许可协议,这是包含的步骤之一。

安装Oracle Java 8 JRE

注意:要安装Oracle Java 8 JRE,您需要转到 Oracle Java 8 JRE 下载页面,接受许可协议,并复制相应 .rpm 软件包的下载链接。

切换到您的主目录并使用以下命令下载 Oracle Java 8 JRE RPM:

$ cd ~
$ wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://link_copied_from_site"

然后使用此yum命令安装RPM(如果您下载了其他版本,请在此处替换文件名):

$ sudo yum localinstall jre-8u161-linux-x64.rpm

在确认提示下,输入y然后RETURN继续安装。

现在 Java 应该安装在/usr/java/jre1.8.0_161/bin/java,并从/usr/java/jre1.8.0_161/bin/java链接。

您可以删除先前下载的存档文件:

$ rm ~/jre-8u161-linux-x64.rpm

安装 Oracle Java 8 JDK

注意:要安装Oracle Java 8 JDK,您需要转到Oracle Java 8 JDK下载页面,接受许可协议,并复制相应Linux .rpm软件包的下载链接。

切换到您的主目录并使用以下命令下载Oracle Java 8 JDK RPM:

$ cd ~
$ wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://link_copied_from_site"

然后使用此yum命令安装RPM(如果您下载了其他版本,请在此处替换文件名):

$ sudo yum localinstall jdk-8u161-linux-x64.rpm

在确认提示下,输入y然后RETURN继续安装。

现在Java应该安装在/usr/java/jdk1.8.0_161/jre/bin/java,并从/usr/java/jdk1.8.0_161/jre/bin/java链接。

您可以删除先前下载的存档文件:

$ rm ~/jdk-8u161-linux-x64.rpm

设置默认Java

如果您安装了多个版本的Java,则需要将其中的某一个设置为默认值(即用户运行java命令时将运行的版本)。此外,某些应用程序需要设置某些环境变量来定位要使用的Java安装。本节将向您展示如何执行此操作。

顺便说一句,要检查默认Java的版本,请运行以下命令:

$ java -version

使用 Alternatives

alternatives 命令通过符号链接管理默认命令,可用于选择默认Java命令。

要打印提供java由其管理的命令的程序alternatives,请使用以下命令:

$ sudo alternatives --config java

输出应该类似以下结果:

output
There are 5 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.161-2.6.12.0.el7_4.x86_64/jre/bin/java)
2 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-5.b12.el7_4.x86_64/jre/bin/java)
3 /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java
*+ 4 /usr/java/jre-9.0.4/bin/java
5 /usr/java/jdk-9.0.4/bin/java Enter to keep the current selection[+], or type selection number:

只需输入选择号即可选择java默认情况下应使用的可执行文件。

使用环境变量

许多Java应用程序使用JAVA_HOME或JRE_HOME环境变量来确定java要使用的可执行文件。

例如,如果您安装Java在 /usr/java/jdk1.8.0_161/jre/bin(即可java执行文件位于/usr/java/jdk1.8.0_161/jre/bin/java),您可以设置环境变量 JAVA_HOME 在bash shell或脚本中,如下所示:

$ export JAVA_HOME=/usr/java/jdk1.8.0_161/jre

如果要将环境变量 JAVA_HOME 在系统上为每个用户可用,请运行以下命令:

$ sudo sh -c "echo export JAVA_HOME=/usr/java/jdk1.8.0_161/jre >> /etc/environment"

结论

恭喜,您现在可以运行和/或开发Java应用程序了!

在 CentOS/Fedora 下安装 JAVA 环境的更多相关文章

  1. Linux系统(Centos)下安装Java环境配置步骤详述

    1.首先要去下载好JDK,Java SE 8的官方网址是http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2 ...

  2. Linux下安装Java环境配置

    1.下载安装文件 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 2. ...

  3. Kali下安装Java环境

    <-----教你在Kali下安装Java环境-----> 1. 下载1.8u121的JAVA JDK 下载地址:http://java.sun.com/javase/downloads/i ...

  4. [转]Linux下安装Java环境配置步骤详述

    1.下载jdk8 登录网址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 选择 ...

  5. centos 6.8安装java环境

    1.rpm -qa |grep java   查看当前是否有java已经安装了,部分centos系统已经安装了的openjava环境,但是很多项目不熟要求的是要必须是sun的java环境 2.yum ...

  6. Linux下安装Java环境配置步骤详述

    0.下载jdk8 登录网址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html选择对 ...

  7. Ubuntu下安装Java环境

    1 Java 8 下载地址 http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs. ...

  8. Centos/Fedora下安装Twisted,failed with error code 1 in /tmp/pip-build-H1bj8E/twisted/解决方法

    Python踩坑之路 pip/easy_install无法安装Twisted或者安装后无法导入Twisted 看到MM网站上很多图,想用Scrapy框架爬点图,遇到各种库的问题,蛋疼. 一直twist ...

  9. Linux使用之centos下安装Java环境并运行Java程序

    前言 在Java中所有的程序都是在JVM上运行的.Java虚拟机(JVM)读取并处理经过编译的与平台无关的*.class文件.因为Java语言源程序编写后,先使用Java伪编译器进行伪编译,将其转换为 ...

随机推荐

  1. POJ 1007 DNA Sorting(sort函数的使用)

    Description One measure of ``unsortedness'' in a sequence is the number of pairs of entries that are ...

  2. 从零开始学JAVA(09)-使用SpringMVC4 + Mybatis + MySql 例子(注解方式开发)

    项目需要,继续学习springmvc,这里加入Mybatis对数据库的访问,并写下一个简单的例子便于以后学习,希望对看的人有帮助.上一篇被移出博客主页,这一篇努力排版整齐,更原创,希望不要再被移出主页 ...

  3. C# Web 数据注解Data Annotations、模型状态ModelState、数据验证

    C#中的模型状态与数据注解,为我们提供了很便利的请求数据的验证. 1. ModelState ModelState在进行数据验证的时候很有用的,它是: 1)验证数据,以及保存数据对应的错误信息. 2) ...

  4. 网页中通过js修改img的src属性刷新图片时,图片缓存问题现象表述及问题解决【ps:引用大神案例http://blog.csdn.net/goodleiwei/article/details/50737548】

    问题:上传一张图片,通过js更新src属性刷新图片使其即时显示时, 当img的src当前的url与上次地址无变化时(只更改图片,名称不变,不同图片名称相同)图片不变化(仍显示原来的图片) 但通过fir ...

  5. .net Core 部署到 Linux

    1.环境说明 服务器系统:CentOS 7.4  64位 相关工具:Xshel.Xftp .net Core版本:2.2 VS版本:2017 服务器软件软件:.netcore.nginx.superv ...

  6. 【Spring】3、BeanFactory 和 ApplicationContext的区别

    转自:http://blog.csdn.net/intlgj/article/details/5660587 在spring中,两个最基本最重要的包是 org.springframework.bean ...

  7. Points on Cycle (hdu1700,几何)

    Points on Cycle Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  8. APP中内嵌H5页面为什么不能下载?

    在APP中内嵌H5页面,若页面上存在下载链接,没有任何反应,为什么呢? 原因是app中内嵌的H5页面是WebView解析的,什么是WebView呢? 在Android手机中内置了一款高性能webkit ...

  9. 单表(SSM、SpringBoot、SpringCloud、Freemaker、BootStrap等)

    山门也有门门道道, 开发.测试.安卓...... 小子被纳入MIS小山峰,虽不及BOP势力庞大,高手如云, 仅寥寥七人, 却也于入小山峰之事乐趣至极. 前几日峰主布下一道新手任务, 制作一张单表并运行 ...

  10. Android--activity切换时的动画

    1.首先先创建四个动画文件 ①:left_in.xml <?xml version="1.0" encoding="utf-8"?> <set ...