Jenkins | 构建项目报found version 4, expected 3的错误,点解?

发布于 2022-09-11 20:14:24 字数 1132 浏览 20 评论 0

Jenkins | 构建Angular项目报found version 4, expected 3的错误,点解?

09:55:21 ERROR in Metadata version mismatch for module
/var/jenkins_home/workspace/TEST.SkylotFront/node_modules/ngx-weui/utils/types.d.ts,
found version 4, expected 3
09:55:21 ERROR in ./src/main.ts
09:55:21 Module not found: Error: Can't resolve
'./$$_gendir/app/app.module.ngfactory' in
'/var/jenkins_home/workspace/TEST.SkylotFront/src' 09:55:21 @
./src/main.ts 3:0-74
09:55:21 @ multi ./src/main.ts

我自己在项目中用的版本是"ngx-weui": "^1.0.15" (在package.json中)
用过这个组件的都知道,1.0.15已经很落后很老了,两年前的版本,现在最新的是7.0

我自己在项目中用的版本是"ngx-weui": "^1.0.15" (在package.json中)

用过这个组件的都知道,1.0.15已经很落后很老了,两年前的版本,现在最新的是7.0。
所以,网上说要降版本的解决办法,我也用过,依旧不适用;但是,我就想,有没有可能是版本落后呢?于是我就分别升到了3.0.0和5.0.4来试(这个没有4.0.0版本),依旧不行。

然后,我看了一个奇怪的解决办法,说是在app.router.ts随便敲入几个空格就行了,我也试了,不行。

最后,我把node_modules全删了,重新install回来,也还是不行。

我自己在本地编译都可以啊,怎么在jenkins里面编译就报这种鬼错误?这么娇气的吗???

希望有大佬能给出不一样的解决办法,先谢谢啦!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

肥爪爪 2022-09-18 20:14:24

经过几天的摸索,终于找到了一个方法:
在Jenkins的配置如下

npm cache verify;
npm config set registry https://registry.npm.taobao.org;
npm config get registry;
npm install ngx-weui@1.0.10 --save;
npm install;
npm run build --prod --env=${env} -base-href ./;

第1句是清除npm的缓存:当清node_modules 出现某一些包错误时候,查不到原因时候,可以适当的清除缓存试试。删掉重新安装。 可以是npm cache clean;

第2句是设置为淘宝镜像:因为我发现node_modules的文件,无论我怎么升降版本,都会与我的本地可编译文件不一样,所以一查,不是淘宝镜像。为了统一,于是设置为淘宝镜像。

第3句是查询一下当前的镜像是什么的,这个可以不用。

第4句是用命令的方式去更新出问题的插件版本,因为仅有第1、第2句和第5句的时候,好像也没有更新node_modules,删掉重新下载也没用。于是就想着在编译的时候多出一步去处理这个版本的问题。

第5句更新node_modeles。

第6句编译。

PS:因为在这里配置了更新插件版本,所以,编译的速度会下降了一些。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文