flutter pub upgrade更新package包版本

假设我们在Flutter项目的pubspec.yaml配置文件中首次添加对url_launcher包的依赖

dependencies:
  url_launcher: '>=4.0.0 <=5.1.1'

 假设在https://pub.dev中url_launcher有如下版本,那么根据'>=4.0.0 <=5.1.1'的限定,当执行flutter pub get后,我们获取到的符合条件的版本是5.1.0

4.0.0
4.0.1
4.0.2
...
5.0.9
5.1.0

 这时候pubspec.lock文件中会自动增加如下关于url_launcher包的配置,可以看到锁定的版本就是5.1.0

锁定版本是为了保证你或者团队的其他人再次执行flutter pub get每次都能够获得同样的版本,也就是锁定的版本,这样可以避免版本不一致造成的冲突问题。

url_launcher:
    dependency: "direct main"
    description:
      name: url_launcher
      url: "https://pub.dartlang.org"
    source: hosted
    version: "5.1.0"

假设url_launcher的开发者上传了新的版本5.1.1,这各版本号是符合'>=4.0.0 <=5.1.1'的限定的,但是由于在pubspec.lock中已经锁定了5.1.0版本,即使我们重新执行flutter pub get,得到的依然是5.1.0版本

如果要更新依赖的版本,可以执行‘flutter pub upgrade’或者在Android Studio中点击pubspec.yaml文件编辑页面顶部的‘Packages upgrade’按钮

更新成功后,可以看到pubspec.lock文件中锁定的版本变成了5.1.1

url_launcher:
    dependency: "direct main"
    description:
      name: url_launcher
      url: "https://pub.dartlang.org"
    source: hosted
    version: "5.1.1"

 

 

 

 

posted @ 2019-10-12 11:25  野猿新一  阅读(114)  评论(0编辑  收藏  举报