3

我正在构建一个 angular2 应用程序,并且我在 TFS 中开发了一个构建配置文件来自动构建它。

有四个 npm 命令:

  • npm install angular-cli -g
  • npm install
  • npm run typings(执行typings install
  • npm run build(执行ng build

然后Copy Publish Artifact一步。

然而,即使每一步都过去了,它说Finishing Copy and Publish Build Artifacts,项目已经构建,文件已经移动,实际构建永远不会完成。我尝试将这些 npm 命令分解为 powershell 脚本,将它们作为NPMTFS 中的命令,并将它们作为CMD命令运行,但每次都会发生同样的事情。此外,如果我只是远程进入构建服务器并手动运行命令,它就可以正常工作。

有任何想法吗?

4

1 回答 1

1

我们最近也遇到了同样的问题,我强烈建议您不要依赖 TFS Build 来恢复 npm 包。即使你做对了,它也需要很长时间并且不会将你需要的 node_modules 部署到 IIS。

相反,使用 WebPack 将您的 node_modules 捆绑到 bundle.js 中。在您的项目/脚本文件夹中引用它并将其签入源代码管理。

删除构建过程中的所有 npm install 步骤(不再需要它,因为您现在引用了 bundle.js)。

这将提高你的质量(没有未来的包版本惊喜),并加快你的部署(不再需要在每个构建上下载 npm 包)。

安装 Webpack 相当快,而且你会省去头痛 :)

于 2017-04-19T02:12:15.430 回答