NPM执行命令报错Failed to replace env in config: ${NPM_BASE64_USERNAME_PASSWORD}如何解决
排查解决方案
- 第一步:定位所有生效的npm配置文件
执行命令:npm config ls -l,在输出中找到userconfig(用户级配置)、globalconfig(全局配置)、projectconfig(当前项目配置)对应的三个文件路径,依次打开每个文件检查是否存在包含${NPM_BASE64_USERNAME_PASSWORD}的配置行。 - 第二步:处理找到的配置行
- 如果你不需要用到对应私有源,直接删除包含该环境变量占位符的行即可
- 如果你需要保留该私有源配置,直接将
${NPM_BASE64_USERNAME_PASSWORD}替换为你实际的Base64编码后的用户名密码字符串,不需要保留环境变量占位符
- 第三步:如果要保留环境变量注入的方式
先执行echo $NPM_BASE64_USERNAME_PASSWORD验证当前shell环境变量是否存在:- 如果输出为空,临时生效可执行
export NPM_BASE64_USERNAME_PASSWORD=你的编码后用户名密码 - 要永久生效的话,把上述export命令写入你当前shell的配置文件(例如/.zshrc、/.bashrc),保存后执行
source 对应配置文件路径即可生效
- 如果输出为空,临时生效可执行
- 第四步:验证修复结果
执行npm -v,如果正常输出版本号说明问题已解决,可再执行其他npm命令验证。
内容的提问来源于stack exchange,提问作者Andrew Lee
相关产品推荐
相关产品推荐

