jenkins 部署 flutter 打包的问题

5 天前
 gaotong2332
有没有老哥用 jenkins 打包 flutter ,执行 flutter pub get 的时候会自动把所有 package 升级到最新版本,为什么没有按照 pubspec.lock 下载 package 。

Jenkinsfile 代码:

stage('Install Dependencies') {
steps {
sh 'flutter pub get'
}
}
1128 次点击
所在节点    程序员
9 条回复
crackidz
5 天前
在 pubspec 中直接固定版本而不是版本范围可破啊...
gaotong2332
5 天前
@crackidz 项目引用的插件有点多,固定版本改挺多的
AoEiuV020JP
5 天前
看了下官方文档,确实是不应该有更新依赖的, 看看具体更新了什么包,会不会有什么特殊的原因,
实际上我我不大喜欢这样 lock 限制版本的,尤其我现在多用 melos 管理多模块项目,lock 是全部 git ignore 的,
AoEiuV020JP
5 天前
反复测试了下, 发现两种情况, 会导致 pub get 修改 lock,
1 ,lock 中的版本不满足 yaml 中的声明,比如刚改了 yaml 提升了版本号,
2, flutter 自身的依赖,yaml 中并没用相关声明,当前 flutter 版本不同就会产生不同的 lock,
gaotong2332
5 天前
@AoEiuV020JP 本机打包的时候,是会根据 lock 文件下载对应版本的 package ,只有在 jenkins 上打包的时候会遇到这个问题,真的挠头
AoEiuV020JP
5 天前
@gaotong2332 #5 最好能把 lock 文件 diff 出来看看改了什么,
另外有没有“换镜像源”,源不同的话 lock 文件等于没有,
jifengg
5 天前
我以前遇到 @AoEiuV020JP 提到的“换镜像源”导致 lock 没用的问题,解决办法就是统一源
mybro
4 天前
顺便问一下,mac 平台打包怎么做的?目前是用了一台 mac 专门来打包
gaotong2332
4 天前
@mybro 也是有一台 mac 电脑专做打包,这台 mac 部署上 jenkins

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1052687

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX