Angular5:供应商包未在 Jenkins 构建中更新
Posted
技术标签:
【中文标题】Angular5:供应商包未在 Jenkins 构建中更新【英文标题】:Angular5: Vendor bundle not getting updated in Jenkins build 【发布时间】:2018-10-02 07:31:12 【问题描述】:我有一个angular5
应用程序,我使用webpack
捆绑器和yarn
包管理器。我通过运行以下命令来设置应用程序:
yarn global add @angular/cli@latest
yarn
它安装angular-cli
,所有各自的依赖项/库并链接依赖项。当我运行ng serve
时,应用程序运行良好,当我运行ng build --aot
时,应用程序构建良好并且构建运行也很完美。
但是当我运行相同的命令来使用下面的 Jenkins 作业运行我的构建时,它没有正确更新供应商捆绑包,因为应用程序的某些部分无法正常工作,尤其是 highcharts
yarn global add @angular/cli@latest
yarn
ng build --aot
我什至尝试过 ng build --aot --vendor-chunks=true
,但我本地构建中的 vendor.js
和 vendor.map.js
文件与 jenkins
构建中的文件不同。
我确实删除了所有 node_modules ,并运行了上述命令,但仍然没有区别。我可以看到的另一个大区别是我在本地机器上的 node_modules 大约有 1535 个包,而 jenkins 工作区上的一个只有 1505 个。我验证了大多数主要包,尤其是 highcharts
和 highmaps
。但它们确实存在。
我在这里缺少什么?是参数问题还是缺少其他可安装的。我也在使用anglar-cli
1.7.4 版、yarn
1.6.0 和webpack
最新版本。
【问题讨论】:
文件是否有可能只是被缓存在浏览器中?您是否有理由不运行ng build --prod
?最好获取缓存破坏名称。 github.com/angular/angular-cli/wiki/build
不,它不是缓存。我并排比较了这些文件,它们是不同的。我也尝试删除所有浏览器历史记录。使用 ng build --prod ,但没有区别
【参考方案1】:
问题最终是angular-highcharts
版本。将其从5.2.12
降级为5.2.1
使其正常工作。
【讨论】:
以上是关于Angular5:供应商包未在 Jenkins 构建中更新的主要内容,如果未能解决你的问题,请参考以下文章
ngx-bootstrap 下拉菜单未在 Angular 5 项目中打开
Sonarscanner MSBuild 工具未在管道中运行 - Jenkins