【发布时间】:2016-11-13 09:32:57
【问题描述】:
我在 VSTS 中设置构建步骤时遇到问题。我们使用 gulp 从less 文件生成css。在 Visual Studio (Task Runner Explorer) 中运行良好,但在 VSTS 中运行时出现以下构建错误:
Gulp 失败并出现错误:C:\NPM\Modules\gulp.cmd 失败并返回代码:1
我也尝试了the docs 中提到的关于 NPM / Gulp 设置的示例,但它对我也不起作用。我应用的唯一更改是设置 gulpfile.js 的路径。我保留了其余部分(NPM 安装参数、Gulp 任务名称、工作文件夹等)但我得到了上面提到的错误。
任何建议我做错了什么?
这是失败的构建步骤的完整日志:
2016-07-11T12:07:06.7456466Z 将工作文件夹设置为默认值:C:\LR\MMS\Services\Mms\TaskAgentProvisioner\Tools\agents\1.102.0\tasks\Gulp\0.5.24 2016-07-11T12:07:06.9966480Z ##[debug]agent.workFolder=C:\a 2016-07-11T12:07:07.0176485Z ##[debug] 加载输入和端点 2016-07-11T12:07:07.0186489Z ##[debug] 加载 ENDPOINT_AUTH_E43D0F79-1244-42AD-B28B-5B98484615E7 2016-07-11T12:07:07.0186489Z ##[debug] 加载 ENDPOINT_AUTH_PARAMETER_E43D0F79-1244-42AD-B28B-5B98484615E7_ACCESSTOKEN 2016-07-11T12:07:07.0196487Z ##[debug] 加载 ENDPOINT_AUTH_PARAMETER_SYSTEMVSSCONNECTION_ACCESSTOKEN 2016-07-11T12:07:07.0196487Z ##[debug] 加载 ENDPOINT_AUTH_SCHEME_E43D0F79-1244-42AD-B28B-5B98484615E7 2016-07-11T12:07:07.0206490Z ##[debug] 加载 ENDPOINT_AUTH_SCHEME_SYSTEMVSSCONNECTION 2016-07-11T12:07:07.0206490Z ##[debug] 加载 ENDPOINT_AUTH_SYSTEMVSSCONNECTION 2016-07-11T12:07:07.0216488Z ##[debug] 加载 INPUT_CWD 2016-07-11T12:07:07.0216488Z ##[debug] 加载 INPUT_GULPFILE 2016-07-11T12:07:07.0216488Z ##[debug] 加载 INPUT_GULPJS 2016-07-11T12:07:07.0226488Z ##[调试]已加载 9 2016-07-11T12:07:07.0226488Z ##[debug]检查路径:C:\LR\MMS\Services\Mms\TaskAgentProvisioner\Tools\agents\1.102.0\tasks\Gulp\0.5.24\task.json 2016-07-11T12:07:07.0236481Z ##[debug] 将资源文件设置为:C:\LR\MMS\Services\Mms\TaskAgentProvisioner\Tools\agents\1.102.0\tasks\Gulp\0.5.24\task .json 2016-07-11T12:07:07.0236481Z ##[debug]system.culture=en-US 2016-07-11T12:07:07.0246486Z ##[debug]gulpFile=C:\a\1\s\MyProject\gulpfile.js 2016-07-11T12:07:07.0246486Z ##[debug] 检查路径:C:\a\1\s\MyProject\gulpfile.js 2016-07-11T12:07:07.0256486Z ##[调试]cwd=C:\a\1\s 2016-07-11T12:07:07.0256486Z ##[调试]路径存在:C:\a\1\s 2016-07-11T12:07:07.0276485Z ##[debug]gulp=C:\NPM\Modules\gulp.cmd 2016-07-11T12:07:07.0276485Z ##[debug] 检查路径:C:\NPM\Modules\gulp.cmd 2016-07-11T12:07:07.0286476Z ##[debug]targets=null 2016-07-11T12:07:07.0296489Z ##[调试]C:\NPM\Modules\gulp.cmd 参数:[] 2016-07-11T12:07:07.0296489Z ##[debug]C:\NPM\Modules\gulp.cmd 参数:--gulpfile 2016-07-11T12:07:07.0306484Z ##[debug]C:\NPM\Modules\gulp.cmd pathArg: C:\a\1\s\MyProject\gulpfile.js 2016-07-11T12:07:07.0306484Z ##[debug]C:\NPM\Modules\gulp.cmd 参数:C:\a\1\s\MyProject\gulpfile.js 2016-07-11T12:07:07.0316486Z ##[debug]arguments=null 2016-07-11T12:07:07.0316486Z ##[debug] 执行工具:C:\NPM\Modules\gulp.cmd 2016-07-11T12:07:07.0316486Z ##[调试]参数: 2016-07-11T12:07:07.0326490Z ##[调试] --gulpfile 2016-07-11T12:07:07.0326490Z ##[调试] C:\a\1\s\MyProject\gulpfile.js 2016-07-11T12:07:07.0336484Z [命令]C:\NPM\Modules\gulp.cmd --gulpfile C:\a\1\s\MyProject\gulpfile.js 2016-07-11T12:07:07.9754363Z [12:07:07] 在 C:\a\1\s\MyProject 中找不到本地 gulp 2016-07-11T12:07:07.9764358Z [12:07:07] 尝试运行:npm install gulp 2016-07-11T12:07:07.9844369Z ##[调试]rc:1 2016-07-11T12:07:07.9854369Z ##[调试]成功:假 2016-07-11T12:07:07.9874369Z ##[debug]taskRunner 失败 2016-07-11T12:07:07.9894368Z ##[debug] 任务结果:失败 2016-07-11T12:07:07.9964345Z ##[error]Gulp 失败,错误:C:\NPM\Modules\gulp.cmd 失败,返回码:1
还有package.json的内容
{
"name": "package",
"version": "1.0.0",
"private": true,
"devDependencies": {
"gulp": "3.9.1",
"gulp-bower": "0.0.13",
"gulp-config": "0.3.0",
"gulp-less": "3.0.5",
"gulp-plumber": "1.1.0",
"gulp-minify-css": "1.2.4",
"gulp-watch": "4.3.5"
}
}
以及“npm install”步骤的日志
2016-07-12T09:39:02.2279747Z 将工作文件夹设置为默认值:C:\LR\MMS\Services\Mms\TaskAgentProvisioner\Tools\agents\1.102.0\tasks\Npm\0.2.14 2016-07-12T09:39:02.9144367Z ##[debug]agent.workFolder=C:\a 2016-07-12T09:39:02.9144367Z ##[debug] 加载输入和端点 2016-07-12T09:39:02.9154360Z ##[debug] 加载 ENDPOINT_AUTH_E43D0F79-1244-42AD-B28B-5B98484615E7 2016-07-12T09:39:02.9154360Z ##[debug] 加载 ENDPOINT_AUTH_PARAMETER_E43D0F79-1244-42AD-B28B-5B98484615E7_ACCESSTOKEN 2016-07-12T09:39:02.9164387Z ##[debug] 加载 ENDPOINT_AUTH_PARAMETER_SYSTEMVSSCONNECTION_ACCESSTOKEN 2016-07-12T09:39:02.9174377Z ##[debug] 加载 ENDPOINT_AUTH_SCHEME_E43D0F79-1244-42AD-B28B-5B98484615E7 2016-07-12T09:39:02.9174377Z ##[debug] 加载 ENDPOINT_AUTH_SCHEME_SYSTEMVSSCONNECTION 2016-07-12T09:39:02.9184400Z ##[debug] 加载 ENDPOINT_AUTH_SYSTEMVSSCONNECTION 2016-07-12T09:39:02.9184400Z ##[debug] 加载 INPUT_COMMAND 2016-07-12T09:39:02.9194377Z ##[debug] 加载 INPUT_CWD 2016-07-12T09:39:02.9204364Z ##[调试]已加载 8 2016-07-12T09:39:02.9204364Z ##[debug]检查路径:C:\LR\MMS\Services\Mms\TaskAgentProvisioner\Tools\agents\1.102.0\tasks\Npm\0.2.14\task.json 2016-07-12T09:39:02.9214362Z ##[debug] 将资源文件设置为:C:\LR\MMS\Services\Mms\TaskAgentProvisioner\Tools\agents\1.102.0\tasks\Npm\0.2.14\task .json 2016-07-12T09:39:02.9214362Z ##[debug]system.culture=en-US 2016-07-12T09:39:02.9224360Z ##[debug] 检查路径:C:\Program Files\nodejs\npm.cmd 2016-07-12T09:39:02.9224360Z ##[debug]npm=C:\Program Files\nodejs\npm.cmd 2016-07-12T09:39:02.9224360Z ##[debug]cwd=C:\a\1\s\MyProject 2016-07-12T09:39:02.9234370Z ##[debug] 路径存在:C:\a\1\s\MyProject 2016-07-12T09:39:02.9234370Z ##[debug] 命令=安装 2016-07-12T09:39:02.9244374Z ##[debug]C:\Program Files\nodejs\npm.cmd 参数:安装 2016-07-12T09:39:02.9244374Z ##[debug]arguments=null 2016-07-12T09:39:02.9254371Z ##[debug] 执行工具:C:\Program Files\nodejs\npm.cmd 2016-07-12T09:39:02.9254371Z ##[调试]参数: 2016-07-12T09:39:02.9503609Z ##[调试] 安装 2016-07-12T09:39:02.9503609Z [命令]C:\Program Files\nodejs\npm.cmd 安装 2016-07-12T09:39:12.1720721Z npm WARN 已弃用 gulp-minify-css@1.2.4:请使用 gulp-clean-css 2016-07-12T09:39:15.5308118Z npm WARN 已弃用 graceful-fs@3.0.8:graceful-fs v3.0.0 及之前的版本在节点版本 >= v7.0 上将失败。请尽快更新到graceful-fs@^4.0.0。使用“npm ls graceful-fs”在树中找到它。 2016-07-12T09:39:15.6948189Z npm WARN 已弃用 minimatch@2.0.10:请更新到 minimatch 3.0.2 或更高版本以避免 RegExp DoS 问题 2016-07-12T09:39:15.9905269Z npm WARN 已弃用 minimatch@0.2.14:请更新到 minimatch 3.0.2 或更高版本以避免 RegExp DoS 问题 2016-07-12T09:39:16.0395266Z npm WARN 已弃用 lodash@1.0.2: lodash@= v7.0 上会失败。请尽快更新到graceful-fs@^4.0.0。使用“npm ls graceful-fs”在树中找到它。 2016-07-12T09:39:18.0735789Z npm WARN 已弃用 minimatch@0.3.0:请更新到 minimatch 3.0.2 或更高版本以避免 RegExp DoS 问题 2016-07-12T09:39:18.1575757Z npm WARN 已弃用 lodash@2.2.1: lodash@
【问题讨论】:
-
错误信息过于笼统。可以分享详细的错误日志吗?
-
@Eddie-MSFT 我粘贴了完整的日志消息
-
您是否在“gulp”任务之前添加了“npm install”任务?如果是,您是否在“/package.json”文件中添加了“gulp”作为依赖项?错误消息表明“未找到本地 gulp”。
-
@Eddie-MSFT 是的,我有 2 个步骤。 1:npm install(不带参数)和2:gulp,我粘贴了package.json的内容
标签: node.js build gulp azure-devops