如果,我们在当前terminal窗体中设置了我们flutter sdk的安装目录,则命令flutter --version是可以生效的,但是关闭了当前窗体之后,再执行flutter --version是无法生效的。
open -e .bash_profile
输入 export PATH="$PATH:/Users/wangyajun/workspace/02_development/flutter/bin"
source .bash_profile
flutter --version
生效
关闭当前窗体,再执行flutter --version失效;
怎么办?问题出在哪里?
具体原因是,系统环境变量和用户环境变量的档位问题,系统环境变量必定比用户环境变量先执行,如果执行了系统环境变量则用户环境变量不会再执行(级别较低),类似于window操作系统环境变量分为2级,我们开发人员一般配置开发环境变量是在“系统环境变量”栏目里面。所以我们设置的.bash_profile是用户级别的,如果想要生效,可以把环境变量设置在.zshrc中,或者在.zshrc中间接调用.bash_profile,起到联动的作用。
直接说解决办法:
解决方法如下两种:
①打开vim ~/.zshrc 将需要配置的环境变量配置到该文件中即可。
打开.zshrc的方法很多,可以vim,也可以直接open -e .zshrc,再source .zshrc等;
如图:
②打开.zshrc,在.zshrc文件中添加source ~/.bash_profile到该文件中 ,之后在~/.bash_profile文件中配置的环境变量同样生效。如图: