0

我正在尝试使用 MsBuilds 构建我的角度解决方案。

以下是我的代码片段

>     <Exec Command="npm install" WorkingDirectory="$(SolutionRoot)\Dev\AngularUI" />
>     <Exec Command="npm install -g @angular/cli"  WorkingDirectory="$(SolutionRoot)\Dev\AngularUI" />
>     <Exec Command="ng build --prod" WorkingDirectory="$(SolutionRoot)\Dev\AngularUI" />

虽然npm i命令工作正常,但我收到命令错误'ng' is not recognized as an internal or external commandng build --prod

我尝试从 cmd 运行相同的命令,并且在相同的构建帐户中也可以正常工作。

4

1 回答 1

0

试试npm run ng build。唯一的问题是它省略了任何其他参数,如构建--prod--test构建之后。

以下是我用来从 Jenkins 成功运行我的角度构建的命令。通过设置路径变量以肮脏的方式进行操作。不知道是否有更清洁的方法来做到这一点。这确实可以正确执行命令而不会省略任何内容。

set PATH=%PATH%;C:\Users\Administrator\AppData\Roaming\npm;C:\Users\Administrator\AppData\Roaming\npm\node_modules\@angular\cli\bin;

@echo on
cmd /c npm install -g @angular/cli@latest

echo yarn Install
cmd /c yarn

echo Build    
ng build --prod --aot=true

可能你也可以删除cmd /c,仍然可以工作。仅在出现错误时使用它以正确处理内容。

于 2018-04-10T19:14:58.207 回答