Visual Studio 2017重建项目时报gulp命令退出代码9009问题求助
错误码9009的本质是Visual Studio执行构建时无法在当前环境路径中找到gulp可执行文件,可按以下步骤排查解决:
- 优先重启Visual Studio甚至操作系统,环境变量修改后不会自动同步到已经启动的程序,VS会一直缓存启动时读取的PATH配置,重启后才会加载新的路径。
- 调整外部工具路径的优先级,将你添加的
C:\Program Files\nodejs、npm对应%AppData%路径移动到C:\python39\路径之前,避免路径被后者覆盖;同时确认nodejs路径同时添加到了系统级PATH和当前用户PATH中,VS默认优先读取系统级环境变量。 - 改为调用项目本地安装的gulp,避免依赖全局配置:你已经在package.json的devDependencies中声明了gulp依赖,直接将scripts字段中的
"css": "gulp"修改为"css": "node_modules/.bin/gulp",构建时会直接调用项目内部的gulp程序,完全不受全局PATH配置影响。 - 修复版本兼容性问题:你的package.json中engines字段明确要求node版本为5.9.1、npm版本为3.7.3,但你当前使用的node12、npm6和声明的版本差距极大,gulp 3.x本身和高版本node存在兼容性问题。你可以选择两种方案:要么将node版本降级到5.x系列匹配项目要求,要么将gulp升级到4.x版本,同步修改gulpfile.js的语法适配新版规则。
- 验证路径是否正确加载:可以在项目的预生成事件中添加命令
echo %PATH%,执行重建后查看输出窗口的PATH内容,确认nodejs和npm的路径是否真的被VS读取到。
内容的提问来源于stack exchange,提问作者lonelydev101
相关产品推荐
相关产品推荐

