1.linux下jdk环境变量配置

是否需要配置环境变量,主要看java -version 显示的版本是否为你期望的版本

1.1 不需要配置环境变量的情况

使用java -version查看,版本显示正好是你刚刚安装的版本,这一般为rpm包安装的情况

rpm安装命令:rpm -ivh /data/software/jdk-7u67-linux-x64.rpm

1.2 需要配置jdk环境的情况

java -version显示的版本号不对。一般是直接解压的jdk都需要配置。

1.3 jdk环境变量配置及生效

修改/etc/profile

(有些可能改对应用户下的隐藏文件.base_profile或.profile,如root用户,对应/root/.bash_profile,/root/.profile)

vi /etc/profile

在末尾加入

export JAVA_HOME=/usr/java/jdk1.7.0_67

export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib

export PATH=$PATH:$JAVA_HOME/bin

然后执行source /etc/profile,执行可使之马上生效。

2.配置了环境变量后不生效的解决方案

问题:在/etc/profile中配置了环境变量,执行java -version发现版本还是不对,怎么办?

解决步骤

1、关闭ssh连接,重新连接,再次执行java -version查看版本,有些可能是缓存,重新连接即可

2、步骤1没解决,执行步骤2,检查/etc/profile中是否书写有误,如英文单词写错了。

3、步骤2没解决,执行步骤3,看看是否有其他配置文件中配置了环境变量。

如(有些可能改对应用户下的隐藏文件.base_profile或.profile,如root用户,对应/root/.bash_profile,/root/.profile)

通过echo $PATH和echo $CLASSPATH查看,看是否有其他路径的jdk版本存在。

4、查看PATH和CLASSPATH都没有问题,但java -version还是不对怎么办?

终极绝招:分析PATH路径,

[root@localhost ~]# echo $PATH
    /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/bin:/usr/java/jdk1.7.0_67/bin:/root/bin

根据PATH中的路径从前到后的顺序查找java文件

即查找以下路径中是否存在java文件

/usr/lib64/qt-3.3/bin

/usr/local/sbin

/usr/local/bin

/sbin

/bin

/usr/bin

/usr/java/jdk1.7.0_67/bin

/root/bin

也可以使用find / -name "java"查找所有的java文件,然后看看这些java文件是否在PATH对应的目录中,

一般出问题的都在/usr/bin路径下的java文件,该文件是个链接文件,指向的真实文件并非你需要的jdk版本,可以把该文件删除,

然后重新安装jdk(rpm -ivh /data/software/jdk-7u67-linux-x64.rpm )。

如下是错误的链接文件:

[root@localhost bin]# ll /usr/bin/java

lrwxrwxrwx. 1 root root 22  8月  6 12:16 java -> /etc/alternatives/java

linux下jdk环境变量配置深度分析----解决环境变量不生效的问题的更多相关文章

  1. linux下jdk的安装配置

    1.下载jdk:地址 选中你选择的版本,下载linux版本对应你系统的32位或64位. 我这里选择的是64位. 2.使用你的ssh直连工具把安装包丢到/usr/local/目录下 3.解压安装jdk ...

  2. windows+linux下jdk安装及java环境变量配置

    对于初学java的用户来说,可能第一件要做的事情就是安装jdk及配置环境,以下内容主要讲述windows及linux下jdk的安装以及环境变量的配置. 1.首先下载相应平台可用版本jdk安装文件,可以 ...

  3. hadoop搭建杂记:Linux下JDK环境变量的设置(三种配置环境变量的方法)

    Linux下JDK环境变量的设置(三种配置环境变量的方法) Linux下JDK环境变量的设置(三种配置环境变量的方法) ①修改/etc/profile文件 如果你的计算机仅仅作为开发使用时推荐使用这种 ...

  4. Linux下jdk的安装和环境变量的配置

    Linux下jdk的安装和环境变量的配置 一.jdk的下载 方式一:在官网下载 http://www.oracle.com/technetwork/java/javase/downloads/inde ...

  5. Linux下Jdk的安装和jdk环境变量的设置

    我们在Linux下安装系统软件的时候,经常遇到一些系统环境变量配置的问题.什么是环境变量?如何定制环境变量?我将在下面做一些介绍.一.什么是环境变量?Linux是一个多用户的操作系统.多用户意味着每个 ...

  6. linux下lamp.sh一键配置lamp环境流程

    linux下lamp.sh一键配置lamp环境流程 一.总结 一句话总结: 2.将网站从github上clone到/data/www/网站域名/ 3.更改网站目录权限:chown -R apache: ...

  7. 解决 Ubuntu 18.10 使用较新的独立显卡输出无法初始化图形界面并配置深度学习开发环境

    原文地址:解决 Ubuntu 18.10 使用较新的独立显卡输出无法初始化图形界面并配置深度学习开发环境 0x00 配置 硬件 OS: Ubuntu 18.10 Base Board: ASUS WS ...

  8. Linux下Kafka单机安装配置方法(图文)

    Kafka是一个分布式的.可分区的.可复制的消息系统.它提供了普通消息系统的功能,但具有自己独特的设计.这个独特的设计是什么样的呢 介绍 Kafka是一个分布式的.可分区的.可复制的消息系统.它提供了 ...

  9. linux下WEB服务器安装、配置VSFTP

    转载  http://www.oicto.com/centos-vsftp/?tdsourcetag=s_pcqq_aiomsg linux下WEB服务器安装.配置VSFTP 由 admin · 发布 ...

随机推荐

  1. POJ-1325 Machine Schedule,和3041有着异曲同工之妙,好题!

    Machine Schedule Time Limit: 1000MS   Memory Limit: 10000K       Description As we all know, machine ...

  2. js判断对象是否为空对象的几种方法

    1.将json对象转化为json字符串,再判断该字符串是否为"{}" var data = {}; var b = (JSON.stringify(data) == "{ ...

  3. 郁闷的出纳员(bzoj 1503)

    Description OIER公司是一家大型专业化软件公司,有着数以万计的员工.作为一名出纳员,我的任务之一便是统计每位员工的工资.这本来是一份不错的工作,但是令人郁闷的是,我们的老板反复无常,经常 ...

  4. 洛谷——P1007 独木桥

    P1007 独木桥 题目背景 战争已经进入到紧要时间.你是运输小队长,正在率领运输部队向前线运送物资.运输任务像做题一样的无聊.你希望找些刺激,于是命令你的士兵们到前方的一座独木桥上欣赏风景,而你留在 ...

  5. ZOJ3953 ZJU2017校赛(贪心)

    题意:给出n个区间,求至少删掉多少个区间使得不存在区间a, b, c 两两相交    (定义两个区间相交是,区间[l1, r1]和区间[l2, r2]相交,当且仅当存在一个数x,l1<=x< ...

  6. java生成xml

    import java.io.File;import java.io.FileOutputStream;import java.text.SimpleDateFormat;import java.ut ...

  7. json数组显示格式

    {“colorAndImg”:[{"颜色":“红色”,"地址":“www.sohu.com”}, {“颜色”:“绿色,“地址”:“www.sohu.com”}] ...

  8. 010 ACL

    Router>en Router#config t Enter configuration commands, one per line.  End with CNTL/Z. Router(co ...

  9. HTTPie: a CLI, cURL-like tool for humans

    HTTPie github HTTPie 是用 Python 编写,用到了 Requests 和 Pygments 这些出色的库. 主要特性: 直观的语法 格式化和色彩化的终端输出 内置 JSON 支 ...

  10. JAVA 并发编程-读写锁之模拟缓存系统(十一)

    在多线程中,为了提高效率有些共享资源同意同一时候进行多个读的操作,但仅仅同意一个写的操作,比方一个文件,仅仅要其内容不变能够让多个线程同一时候读,不必做排他的锁定,排他的锁定仅仅有在写的时候须要,以保 ...