问题1:
今天在添加java的环境变量的时候,我在/etc/profile
添加了环境变量,因为我使用的是zsh,在source /etc/profile以后,zsh的主题和插件都没有了,java -version
以后出现旗标信息,以为可以了,但是没有主题就很难受,重启shell。java -version
提示没有此命令,懵~
推测问题原因:
由于在终端中source /etc/profile只是让本shell进程执行,相当于只是在本shell执行了环境变量,所以重启之后依旧失效
推测解决方法:
在~/.zshrc
中添加source /etc/profile
重启shell
输入java -version
完美解决!
通过百度发现:zsh其实并不使用/etc/profile文件,而是使用/etc/zsh/下面的zshenv、zprofile、zshrc、zlogin文件,并以这个顺序进行加载。
所以推测还有一种方法,在/etc/zsh/zprofile下面export相应的环境变量.
问题2:
在后面的使用中,发现切换到root用户的时候,java的环境变量又不生效了。
解决办法:
在/root/.bashrc文件尾部添加:
source /etc/profile
ok,完美解决
网友评论