环境变量修改不生效

环境变量修改不生效,第1张

1、安装jdk后,需要使用其他版本的jdk,修改环境变量生效,因为安装jdk时,jdk在C盘生成的java.exe、javaw.exe、javaws.exe文件配置,而C盘的这些环境变量的优先级高于JAVA_HOME设置的环境变量优先级,所以,执行java -version时,系统会读取到非JAVA_HOME配置的jdk。如果需要修改环境变量需要删除C盘下的java.exe、javaw.exe、javaws.exe,文件所在目录

C:\Program Files (x86)\Common Files\Oracle\Java\javapath

一、Mac系统的环境变量

加载顺序为:

a. /etc/profile (建议不修改这个文件 ) 全局(公有)配置,不管是哪个用户登录时都会读取该文件

b. /etc/paths (一般在这个文件中添加系统级环境变量) 全局(公有)配置,bash shell执行时不管是何种方式都会读取此文件

c. ~/.bash_profile (一般在这个文件中添加用户级环境变量) 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时该文件仅仅执行一次!

d. ~/.bash_login

e. ~/.profile

f. ~/.bashrc

其中a和b是系统级别的系统启动就会加载;其余是用户接别的。c,d,e按照从前往后的顺序读取,如果c文件存在,则后面的几个文件就会被忽略不读了,以此类推。 ~/.bashrc没有上述规则,它是bash shell打开的时候载入的。

全局设置,一般不建议修改/etc/profile和/etc/bashrc 文件,而去修改/etc/paths文件。如果想要对所有用户都生效则可在/etc/paths文件的最后一行加上自己的app路径。优先级也是最高的。

单个用户生效的配置,一般都是修改~/.bash_profile文件,若bash shell是以login方式执行时,才会读取此文件。该文件仅仅执行一次!

环境变量PATH的语法

如果没特殊说明,设置PATH的语法都为:

export PATH=<PATH 1>:<PATH 2>:<PATH 3>:.....:<PATH N>:$PATH

推荐设置用户个人自己的环境变量,尽量不破坏Mac系统全局变量

查看环境变量PATH

echo $PATH

*** 作系统判断

确定使用的Mac OS X是什么样的Shell

输入命令

echo $SHELL

如果输出的是:csh或者是tcsh,那么你用的就是C Shell

如果输出的是:bash,sh,zsh,那么你的用的可能就是Bourne Shell的一个变种。

Mac OS X 10.2之前默认的是C Shell

Mac OS X 10.3之后默认的是Bourne Shell

如果是Bourne Shell

那么你可以把你要添加的环境变量添加到你主目录下面的.profile或者.bash_profile,如果存在没有关系添加进去即可,如果没有生成一个

需要注意的是,如果你在Mac上使用的是zsh等shell工具,需要再做如下配置,来达到环境变量设置的永久生效。

如果输出的是: csh 或者是 tcsh ,那么你用的就是 C Shell

如果输出的是: bash , sh , zsh ,那么你的用的可能就是 Bourne Shell 的一个变种。

Mac OS X 10.2 之前默认的是 C Shell

Mac OS X 10.3 之后默认的是 Bourne Shell

bash 的配置文件是 .bashrc , zsh 的配置文件是 .zshrc ,当你使用 zsh 作为默认 shell 工具的时候,它启动时并不会加载 bash 的这两个配置文件 .bashrc 和 .bash_profile ,而只会加载自己的配置文件 .zshrc ,为了让我们的配置文件生效,只能在 .zshrc 中添加上面的配置。

如果不做上述设置,你就会发现,只有当你每次 source ~/.bash_profile 后才会生效,下次重新打开 zsh 窗口,还是不生效。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/bake/11934034.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存