Linux - 重新执行source /etc/profile 才能使配置的java环境生效?解决方案 亲测有效!

    每次在linux控制台新开一个窗口,执行java命令都会告诉我找不到这个命令;

[root@connectserver cloud-user]# java
bash: java: command not found

    可是,我明明装了java环境。,而且已经配置了环境变量啊;

[root@connectserver cloud-user]# vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_231
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

[root@connectserver cloud-user]# /usr/java/jdk1.8.0_231/bin/java -version
java version "1.8.0_231"
Java(TM) SE Runtime Environment (build 1.8.0_231-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.231-b11, mixed mode)

    但是执行source /etc/profile就可以正常使用java命令,感觉还是环境变量配置的有问题啊;

    怎么解决这个问题呢?可以在~/.bashrc 中加入一条命令source /etc/profile,就可以了(亲测有效哦(⊙o⊙))

[root@connectserver cloud-user]# vim ~/.bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
  . /etc/bashrc
fi
# Source java env
source /etc/profile
  • /etc/profile此文件为系统的每个用户设置环境信息,当第一个用户登录时,该文件被执行。并从/etc/profile.d 这一配置文件中搜集shell的设置。
  • ~/.bashrc:该文件包含专用于某个用户的bash shell的bash信息,当该用户登录时以及每次打开新的shell时,该文件被读取。

另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系。

posted @ 2022-01-27 18:35  zhangdaopin  阅读(831)  评论(0编辑  收藏  举报