You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter开发疑问:另一种pubspec.yaml包添加方式是否为最新版本?

Flutter 包添加方式的版本规则说明

你提到的另一种添加方式是否会获取最新版本,得看具体写法,下面是几种常见情况的说明:

  • 只写包名(无版本号):比如 shared_preferences:
    这种写法会自动拉取当前兼容你项目Flutter/Dart版本的最新稳定版。不过要注意,后续包发布新版本后,除非你手动执行flutter pub upgrade,否则项目不会自动升级到新的最新版。

  • 带^符号的版本号:比如 shared_preferences: ^2.2.2
    这其实就是pub.dev安装标签里默认给出的写法,它允许升级到不改变第一个主版本号的最新版(比如从2.2.2可以升到2.3.0,但不会跳到3.0.0这种大版本)。只要执行flutter pub get或者flutter pub upgrade,就会拿到这个范围内的最新版本。

  • 固定版本号:比如 shared_preferences: 2.2.2
    这种写法会强制使用指定的版本,哪怕包有更新也不会自动升级,完全不会获取最新版本。

  • Git地址/本地路径:比如 shared_preferences: git: url: https://github.com/flutter/plugins.git path: packages/shared_preferences/shared_preferences
    如果指定的是主分支(比如main/master),执行flutter pub get时会拉取该分支的最新代码;但如果指定了特定的commit或tag,就会固定到对应的版本,不会获取最新版。

简单来说:如果另一种写法是无版本号或者带^的版本号,就能获取对应规则下的最新版本;要是固定版本号、指定了Git特定节点,就不会拿到最新版。

内容的提问来源于stack exchange,提问作者DBG

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 12:45:01