引用第三方库的版本自动升级的问题

​我是如下的方式去引用的第三方库:

“@ohos/dataorm”: “^2.2.2-rc.0”

发现会自动更新为最新的2.2.2-rc.1,所以我的这种写法是有问题吗?​

HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
FengTianYa

​问题发生原因:使用ohpm命令安装指定版本或当时最新版本时,oh-package.json5文件中生成依赖会默认带^符号,此符号表示“次版本和补丁版本可增”,保持主版本(即版本号第一位数字2)不变情况下,次版本号(即版本号第二位数字0)和补丁版本号(即版本号第三位数字0)可以大于等于0,因此若三方包发布了新版本且版本号满足上述条件,oh-package-lock.json并未锁定版本情况下,同步工程中依赖会默认更新三方包版本。

问题规避:

由于目前DevEco Studio开发HarmonyOS应用,使用ohpm install命令安装三方包会自动添加符号^,因此可以采取如下方式规避:方式1:每次安装三方包之后,将oh-package.json5中^符号手动去除,这样保证安装固定版本的三方包;方式2:不通过ohpm install命令安装三方包,直接在oh-package.json5文件中通过代码添加依赖,同样固定版本号,然后再点击右上角【Sync Now】同步工程依赖。这样依赖包将固定具体版本且不会更新。

只有oh-package-lock.json5中并未锁定三方依赖版本时,重新同步刷新工程才会更新依赖版本,即oh-package-lock.json5不存在时会根据oh-package.json配置的依赖重新更新下载三方包,若本地已通过oh-package-lock.json5文件锁定某个具体版本,同步更新工程则不会更新。可以参考:​https://blog.51cto.com/u_15127697/3633383

原文链接:​https://blog.csdn.net/Mayism123/article/details/135059024

分享
微博
QQ
微信
回复
1天前
相关问题
HarmonyOS支持第三方列表
1251浏览 • 1回复 待解决
如何引入自己第三方
392浏览 • 1回复 待解决
第三方js迁移有懂吗?
2256浏览 • 1回复 待解决
ArkTS API 9 Stage 如何引用第三方字体?
3266浏览 • 1回复 待解决
ArkTS不支持使用第三方js
3991浏览 • 1回复 待解决
图片剪切第三方框架
38浏览 • 1回复 待解决
react-native 第三方使用npm更新
1218浏览 • 1回复 待解决
HarmonyOS如何移植第三方MCU?
9040浏览 • 1回复 待解决
开发第三方SDK如何编译?
13388浏览 • 2回复 待解决
第三方怎么装鸿蒙系统?
2201浏览 • 1回复 待解决
是否支持使用第三方webview内核
928浏览 • 1回复 待解决
引用第三方组件代码时
5632浏览 • 1回复 待解决
Text控件使用第三方文档
677浏览 • 1回复 待解决