node.js - ng 不被识别为内部或外部命令。 Jenkins + 角度 CLI

标签 node.js jenkins angular-cli windows-server-2012-r2

我正在尝试为 Angular CLI 项目设置 Jenkins。我已经在特定用户帐户下的 Jenkins 服务器上安装了 Node 和 Angular Cli。 如果我在服务器上打开命令提示符并执行以下命令以验证它们是否已正确安装,结果如下:

enter image description here

我已经使用 Jenkins 配置了项目,并且创建了两个构建步骤,其中两个执行了两个 bat 文件。

一个运行:npm install

第二个运行:ng build --prod

然后我构建 Jenkins,它运行 npm install 但运行 ng build --prod 失败,因为它说“'ng' 未被识别为内部或外部命令”。

我做错了什么吗?有没有另一种方法可以使用 node_modules 文件夹上的角度 cli,所以它不需要使用安装在服务器上的角度 cli。似乎 Angular CLI 只为服务器上的我的用户安装,而不是为 Jenkins 用来构建的用户安装。

PS:我使用以下方式全局安装了 Angular CLI:

npm i -g @angular/cli

最佳答案

无需在服务器上安装angular cli,运行即可

npm run ng -- build 

这将从您的项目 devDependencies

运行本地版本

通过这种方式,您可以将任何标志传递给本地 cli npm run ng -- testnpm run ng -- lint

You can pass additional flags to ng just like that
run ng -- build --prod

更多详情请访问 https://docs.npmjs.com/cli/run-script

关于node.js - ng 不被识别为内部或外部命令。 Jenkins + 角度 CLI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47297329/

相关文章:

javascript - 什么是react js的学习方式?

docker - 如何为每个 jenkins 构建配置 selenoid 中 `-container-network` 的值?

angular - 如何获取一个文件作为angular cli的输出

git - 如何在 Jenkins 构建升级步骤中推送 git 标签?

jenkins - 在 GitHub 中,我如何授予应用程序权限以提交到具有保护的分支?

node.js - 我在安装 Angular cli 时遇到问题

angular - 如何在基于 Angular2 angular-cli 的项目中包含明确类型的文件

node.js - 用于 bower 组件的 Express.js 路由

javascript - 在 Node.JS 中跨数组迭代保存

javascript - 如何将本地 JavaScript 文件导入 NodeJS TypeScript 项目?