每次在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中的變量,他們是"父子"關系。