centos7 正确安装jdk后配置环境变量source .bash_profile 提示 No such file or directory

原文地址:http://www.5ixiudou.com/portal/detailInfo/1000000005/235

一。环境:

服务器系统:centos7 64bit

jdk版本:jdk1.7 64bit

二。使用的 tar.gz 包

下载:http://www.5ixiudou.com/portal/detailInfo/1000000005/235

三。问题描述:

因为业务需要,需要在服务器上配置多个jdk,并且新建用户dubbo,在普通用户级别配置jdk1.7的环境。

在官网下载了jdk1.7 tar.gz 64bit版本之后,在服务器上正确解压后,开始对环境变量进行配置。这个配置比较基础,网上也有大量的教程,按道理来讲不会出现什么问题。在某篇博客上找到配置,在~/.bash_profile中配置了环境变量,

export JAVA_HOME=/home/dubbo/jdk1.7.0_80

export JRE_HOME=$JAVA_HOME/jre

export PATH=$JAVA_HOME/bin:$PATH

export CLASSPATH=./:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

然后执行 source ~/.bash_profile ,竟然报错:

-bash: export JAVA_HOME=/home/dubbo/jdk1.7.0_80: No such file or directory

-bash: export JRE_HOME=/jre: No such file or directory

-bash: export PATH=/bin:/zhouxw/soft-installed/zookeeper/zookeeper-3.4.10//bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/dubbo/.local/bin:/home/dubbo/bin: No such file or directory

-bash: export CLASSPATH=./:/lib:/jre/lib: No such file or directory

四。排查过程:

1.首先检查配置格式,在每个 export 语句之后都没有多余的空格。

2.检查配置内容,也是没有问题。

3.查看目录 /home/dubbo/jdk1.7.0_80 存在。

4.将这四句话的配置移动到 ~/.bashrc 文件中(~/.bash_profile中删除该四句话),然后 source ~/.bashrc 仍然报错。

额,这样的话,我就解决不了了。。挨个查看 /etc/profile、/etc/bashrc 也没有看到错误的地方。至此,怀疑可能是 四个 export 配置语句的问题。

五。解决方案:

查找另外一篇文章的 配置,整理复制到 ~/.bash_profile中,

export JAVA_HOME=/home/dubbo/jdk1.7.0_80

export PATH=$JAVA_HOME/bin:$PATH

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

然后执行 source ~/.bash_profile ,竟然没有报错。执行 java -version 验证也成功了。

六。之前报错的原因:

将两段配置进行比较,发现关键的配置并没有区别,在服务器上,用之前报错的配置段进行更改后竟然还是报错。。然后将两个配置段复制到 notepad++中进行比较,发现两个配置段的内容看上去是一样的,实际通过 ctrl+f进行比较,两句话竟然不一样。。最后得出结论,两个配置段的字符编码不一致。

一句话,原来从网页上复制的配置有问题,眼睛看不出来,但是程序不认,编码问题。

七。结论与建议:

在做一些配置操作的时候,如果直接在网上复制配置段进行配置的话,最好先复制到文本编辑器中进行编辑,去除多余的空格或者中文字符。如果感觉配置没有问题,但是仍然报错的话,可以查找其他文章中的配置内容,然后更改进行验证。

要想出错少,还是得手敲。

更多信息,请关注我的个人网站 www.5ixiudou.com,大家共同学习,共同进步。

猜你喜欢

转载自blog.csdn.net/tianjiliuhen/article/details/85109829