如何在Mac系统中为IntelliJ配置可识别的$PATH环境变量
Mac系统下修改IntelliJ识别的$PATH环境变量方案
问题本质:Mac系统中图形界面应用的默认环境变量与终端shell的环境变量相互独立,IntelliJ默认不会加载你在终端配置文件中添加的/usr/local/bin等路径,因此IDE启动的子进程(包括LSP Support插件调用的可执行文件的子命令)会出现命令查找失败的问题。
方案1:直接在IntelliJ内部配置(最推荐,不影响系统其他设置)
- 打开IntelliJ设置面板,可使用快捷键
Cmd+,快速唤起 - 路径1:进入
Appearance & Behavior > System Settings > Environment Variables,在变量列表中添加PATH,值为$PATH:/usr/local/bin,该配置会作用于所有IDE启动的外部进程,包含LSP插件调用的子进程 - 路径2:进入
Tools > Terminal,在「Environment variables」栏补充同样的PATH配置,保证内置终端也能识别对应路径 - 重启IntelliJ后生效
方案2:修改shell配置文件,让IntelliJ自动加载终端PATH
Mac Catalina及以后版本默认使用zsh作为终端shell,旧版本默认使用bash:
- 若使用zsh:终端执行
open ~/.zprofile,在文件末尾添加export PATH="/usr/local/bin:$PATH"后保存 - 若使用bash:终端执行
open ~/.bash_profile,在文件末尾添加export PATH="/usr/local/bin:$PATH"后保存 - 注意不要仅将PATH配置写入
.zshrc/.bashrc,这类文件仅会被交互模式的shell加载,IntelliJ默认调用的非交互登录shell不会读取该类配置 - 重启IntelliJ后生效
方案3:全局修改图形应用PATH(适用于所有同类GUI应用PATH问题)
- 终端执行命令:
sudo launchctl config user path "/usr/local/bin:$PATH" - 输入密码确认后重启Mac,所有图形界面应用的默认PATH都会包含新增路径
配置验证
配置完成后打开IntelliJ内置终端,执行echo $PATH,检查输出内容中是否包含/usr/local/bin即可确认是否生效。
内容的提问来源于stack exchange,提问作者Jakub Holý
相关产品推荐
相关产品推荐

