npm全局安装firebase-tools报错及.profile不存在问题求助
Firebase CLI 全局安装问题解决方案
首先澄清第一个认知误区
你第一次执行npm install -g firebase-tools输出的所有npm WARN开头的内容均为依赖警告,不是安装错误。末尾显示changed 647 packages就代表firebase-tools已经完成安装,这些警告来自上游依赖包的弃用提示、版本漏洞提示,不会影响工具正常运行,无需额外处理。后续你在主目录执行npm audit显示0漏洞,是因为该命令默认扫描当前目录的项目依赖,没有扫描全局安装的包,和安装失败没有关系。
注意:不要随意执行npm audit fix --force,该命令会自动升级跨大版本的依赖,很可能导致依赖不兼容让工具无法正常运行。
核心报错原因
你执行source ~/.profile提示文件不存在有两个原因:
- 你的系统本身没有创建过
.profile文件,macOS系统默认不会自动生成这个配置文件 - 从你的命令行提示符结尾的
%可以判断你当前使用的是zsh作为默认shell(macOS Catalina及更新版本的默认shell),zsh默认不会加载.profile配置,就算你手动创建这个文件,配置也不会生效。
分步解决流程
- 第一步:确认当前使用的shell,终端执行:
echo $SHELL- 如果输出为
/bin/zsh,后续需要编辑的配置文件为~/.zshrc - 如果输出为
/bin/bash,后续需要编辑的配置文件为~/.bash_profile
- 如果输出为
- 第二步:创建对应配置文件(如果不存在)并写入配置,不需要依赖VSCode,直接在终端执行对应命令即可:
如果你用zsh,执行:
如果你用bash,执行:touch ~/.zshrc && open -e ~/.zshrc
命令执行后会弹出系统自带的文本编辑器,在文件末尾追加以下两行内容:touch ~/.bash_profile && open -e ~/.bash_profile
追加完成后保存文件、关闭编辑器即可。export NPM_CONFIG_PREFIX=~/.npm-global export PATH=~/.npm-global/bin:$PATH - 第三步:让配置立即生效,执行对应shell的source命令:
zsh用户执行:
bash用户执行:source ~/.zshrc
此时不会再出现找不到文件的报错。source ~/.bash_profile - 第四步:验证安装结果,终端执行:
如果正常输出版本号,代表配置完成可以正常使用;如果提示命令不存在,重新执行一次firebase --versionnpm install -g firebase-tools即可,此时全局包会安装到你用户目录下的.npm-global路径,不会再出现EACCES权限报错。
内容的提问来源于stack exchange,提问作者pshyduc
相关产品推荐
相关产品推荐

