一、下载 JDK

  点击下载:jdk-8u211-linux-x64.tar.gz

  根据需要选择对应版本和位数,并将文件放入CentOS中的相关目录中,以 /java/jdk 目录为例,执行 makdir /java/jdk 命令创建该目录;使用Xftp工具将下载的 JDK 压缩文件放入其中。

二、解压

# 切换到 JDK 压缩包所在的目录
$ cd /java/jdk
# 将压缩包解压缩到当下目录
$ tar -zxvf jdk-8u211-linux-x64.tar.gz
# tar 命令中的参数说明:
# -z 支持gzip解压文件
# -x 从压缩的文件中提取文件
# -v 显示操作过程
# -f 指定压缩文件

  解压后的 JDK 目录为:/java/jdk/jdk_1.8.0_211/ ,此目录便是下面将要配置环境变量中的 JAVA_HOME变量的值;

三、环境变量

  JDK 环境变量的配置有三种方式:全局永久生效、当下用户永久生效、临时生效。根据具体需要,选择其一即可。

   1、全局永久生效

  此方法对所有用户生效。执行命令vim /etc/profile 来编辑/etc/profile文件,按键盘i进入编辑模式,在文本末尾添加以下内容:

#set java environment
export JAVA_HOME=/java/jdk/jdk_1.8.0_211
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME PATH CLASSPATH

  依次按键盘 Esc —> (Shift+:) —> q —> w ,即保存并退出编辑模式。然后执行命令 source /etc/profile 使修改立即生效。

  注:此方法还有另一种形式,不需要修改/etc/profile文件,而是要在目录/etc/profile.d/中创建新文件jdk.sh,并编辑。具体操作:执行命令 vim /etc/profile.d/jdk.shvim命令会判断当/etc/profile.d/目录中不存在文件jdk.sh时,会自动创建jdk.sh文件,并编辑。编辑内容同上,最后执行命令source /etc/profile.d/jdk.sh使其生效。

   2、当下用户永久生效

  此方法只针对当下登陆的用户有效,执行命令 vim ~/.bash_profile 来编辑当下用户根目录中的/home/用户名/.bash_profile 文件,在文末添加内容同上,并执行命令source ~/.bash_profile使其生效。

   3、临时生效

  直接运行命令export PATH=$PATH:/java/jdk/jdk_1.8.0_211/bin,使用这种方法,只会对当前会话生效。

四、验证

  最后,执行命令 java -version 验证 JDK 环境变量是否配置成功,若正常显示java版本信息则表示 JDK 安装成功。此时/java/jdk/jdk-8u211-linux-x64.tar.gz已无用,如不需要可以将其删除。

CentOS 安装 JDK 三种形式详细总结的更多相关文章

  1. MySQL安装的三种方式

    .markdown-preview:not([data-use-github-style]) { padding: 2em; font-size: 1.2em; color: rgb(171, 178 ...

  2. Linux安装Jdk,CentOS安装Jdk

    Linux安装Jdk,CentOS安装Jdk >>>>>>>>>>>>>>>>>>>& ...

  3. zookeeper 安装的三种模式

    Zookeeper安装 zookeeper的安装分为三种模式:单机模式.集群模式和伪集群模式. 单机模式 首先,从Apache官网下载一个Zookeeper稳定版本,本次教程采用的是zookeeper ...

  4. spring对事务支持的三种形式

    spring对事务支持的三种形式: 1.通过spring配置文件进行切面配置 <bean id="***Manager" class="org.springfram ...

  5. Qt学习 之 多线程程序设计(QT通过三种形式提供了对线程的支持)

    QT通过三种形式提供了对线程的支持.它们分别是, 一.平台无关的线程类 二.线程安全的事件投递 三.跨线程的信号-槽连接. 这使得开发轻巧的多线程Qt程序更为容易,并能充分利用多处理器机器的优势.多线 ...

  6. Spring Framework5.0 学习(3)—— spring配置文件的三种形式

    Spring Framework  是 IOC (Inversion of Control  控制反转)原则的实践. IoC is also known as dependency injection ...

  7. spring Bean配置的三种形式

    Spring Bean配置有以下三种形式: 传统的xml配置 Spring 2.5 以后新增注解配置 Spring3.0以后新增JavaConfig 1. 传统的xml配置 <?xml vers ...

  8. 2、shader基本语法、变量类型、shader的三种形式、subshader、fallback、Pass LOD、tags

    新建一个shader,名为MyShader1内容如下: 1._MainTex 为变量名 2.“Base (RGB)”表示在unity编辑面板中显示的名字,可以定义为中文 3.2D 表示变量的类型 4. ...

  9. PHP数组输出三种形式 PHP打印数组

    PHP数组输出三种形式 PHP打印数组   $bbbb=array("11"=>"aaa","22"=>"bbb&qu ...

随机推荐

  1. 一个内存不能被written的问题

    C程序面试中曾经面试过这样一道题: #include <stdio.h> int main() { char *p = "12345"; *p = '6'; print ...

  2. vmware + opensuse windows如何远程登录到suse上

    vmware我还是比较偏向7.1.4版本,其他版本装在win7上似乎有点问题.windows平台下,使用vmware + opensuse的网络配置过程如下:      1. 装完vm后,会在本地连接 ...

  3. java算法题每日一练01,java入门简单算法题小练

    1.给数组做反序 public class Ak01 { public static void main(String[] args) { int[] a = new int[]{22,48,41,2 ...

  4. 【弱化版】【P3371 【模板】单源最短路径(弱化版)】-C++

    →原题传送门← 看到题目描述我就知道,这道题不能用SPFA[手动补滑稽] 那么我这道题目采用的是dijkstra算法不了解的去补一下知识哈. dij的模板: #include<bits/stdc ...

  5. 数据库中 ’’ 和 NULL的区别

    null不是对象,''是对象 从'',你就可以知道这是一个字符串类型的数据,是一个长度为零的字符串. 从NULL,你只能知道这里没有赋过值,是空的,他不属于任何数据类型. 我们在数据库实际使用中,一般 ...

  6. [记录]Python的master-worker和epoll模式

    #master-worker模型: #coding:utf-8 import os import sys import socket import time import traceback impo ...

  7. baserecyclerviewadapterhelper -- setOnItemChildClickListener出现的问题

    出现问题 使用baserecyclerviewadapterhelper 的时候使用 adapter.setOnItemChildClickListener()方法,点击没有反应. adapter.s ...

  8. C#3.0新增功能01 自动实现的属性

    连载目录    [已更新最新开发文章,点击查看详细] 在 C# 3.0 及更高版本,当属性访问器中不需要任何其他逻辑时,自动实现的属性会使属性声明更加简洁. 它们还允许客户端代码创建对象. 当你声明以 ...

  9. [小米OJ] 11. 构建短字符串

    思路 排序后对两个字符串遍历 function solution(line) { var str = line.split(" "); var str1 = str[0].spli ...

  10. vijos P1911 珠心算测验

    #include<iostream> using namespace std; int main() { int n; int sum = 0; int num[200]; cin > ...