Azure DevOps私有生成代理-无法将“ webpack”识别为内部或外部命令,

时间:2019-03-21 14:49:24

标签: node.js npm webpack azure-devops

问题:出于某种原因,我们的私有构建代理会引发以下错误:

当我们尝试调用npm run build:prod

时,“'webpack'不被识别为内部或外部命令”

我尝试过的事情:

  • 我尝试使用以下命令全局安装Webpack:npm install --global webpack

  • 我尝试将webpack添加到路径变量

  • 我尝试直接在生成服务器(代理)上运行命令'npm run build:prod'-效果很好

其他信息:

  • 我们的AzureDevops构建代理以NetworkService用户身份运行

  • 在AzureDevOps中,我添加了一个生成任务“ npm”安装和一个附加步骤 运行“ npm run build:prod”

这是完整的错误消息:

[command]C:\Windows\system32\cmd.exe /D /S /C ""C:\Program Files\nodejs\npm.cmd" --version"
5.6.0
[command]C:\Windows\system32\cmd.exe /D /S /C ""C:\Program Files\nodejs\npm.cmd" config list"
; cli configs
metrics-registry = "https://registry.npmjs.org/"
scope = ""
user-agent = "npm/5.6.0 node/v8.9.4 win32 x64"

; environment configs
userconfig = "E:\\vsts-agent\\aztc-agent-1\\_work\\28\\npm\\3704.npmrc"

; builtin config undefined
prefix = "C:\\Windows\\ServiceProfiles\\NetworkService\\AppData\\Roaming\\npm"

; node bin location = C:\Program Files\nodejs\node.exe
; cwd = E:\vsts-agent\aztc-agent-1\_work\28\s\Src\Project\Template\Code
; HOME = C:\Windows\ServiceProfiles\NetworkService
; "npm config ls -l" to show all defaults.

[command]C:\Windows\system32\cmd.exe /D /S /C ""C:\Program Files\nodejs\npm.cmd" run build:prod"

> [name]@0.0.1 build:prod E:\vsts-agent\aztc-agent-1\_work\28\s\Src\Project\Template\Code
> webpack --config webpack.config.prod.js --progress
'webpack' is not recognized as an internal or external command,
operable program or batch file.
npm ERR! code ELIFECYCLE
npm ERR! errno 1

1 个答案:

答案 0 :(得分:0)

最终对我有用的是:

  1. 添加“安装”类型的Npm任务
  2. 添加package.json文件所在的路径 位于
  3. 添加类型为“ custom”的Npm任务,其工作文件夹指向与步骤2中相同的文件夹。并将“命令和参数”字段设置为“ run build:prod”