Pop!_OS 21.04下npm安装gulp出现弃用包警告及运行报错如何解决
问题根因
该问题通常是npm全局包的可执行文件路径未加入系统PATH环境变量导致,Pop!_OS作为Debian衍生发行版,默认npm全局安装路径有时不会自动写入Shell的PATH配置。
修复步骤
第一步:验证npm全局安装路径
执行以下命令查看npm全局包的根目录:npm config get prefix
命令输出的路径下的bin文件夹就是全局包可执行文件的存放位置,执行echo $PATH检查该bin目录是否已包含在PATH列表中。第二步:将全局bin目录加入PATH
如果你使用Bash,编辑~/.bashrc文件;如果使用Zsh,编辑~/.zshrc文件,在末尾添加以下内容:export PATH=$PATH:$(npm config get prefix)/bin
保存后执行对应命令使配置生效:source ~/.bashrc(Bash用户执行)source ~/.zshrc(Zsh用户执行)第三步:重装全局gulp组件(可选,如PATH配置后仍报错)
先完全卸载已安装的全局gulp相关包:sudo npm uninstall --global gulp gulp-cli
仅全局安装gulp-cli即可(gulp本身无需全局安装,放在项目本地依赖即可,全局安装gulp反而容易引发版本冲突):sudo npm install --global gulp-cli第四步:弃用警告与漏洞说明
你收到的urix、resolve-url等包的弃用警告属于gulp-cli依赖的间接旧版本包提示,不影响正常功能可忽略。高危漏洞也属于依赖链的间接漏洞,无实际安全风险,无需额外处理。
验证修复
执行gulp --version,正常会输出gulp-cli的版本号,代表问题已修复。
内容的提问来源于stack exchange,提问作者Fabiano Frank

