當前位置:商標查詢大全網 - 遊戲電競 - Flutter開發--Pub包管理

Flutter開發--Pub包管理

在原生開發中, Android 使用 Gradle 來管理依賴, iOS 用 Cocoapods 來管理依賴,Node 中通過 npm來管理依賴。 Flutter 使用配置文件 pubspec.yaml (位於項目根目錄)來管理第三方依賴包。

Pub 是Google官方的Dart Packages倉庫,類似於node中的npm倉庫,android中的jcenter,我們可以在上面查找我們需要的包和插件,也可以向pub發布我們的包和插件。

Pub工具 包含管理Package、部署Package和部署命令行應用的命令。

如果使用的是Flutter SDK,不要直接使用pub命令。而是使用flutter pub命令,如下:

命令pub get/upgrade/outdated 屬於管理Package的依賴關系

用於檢索當前 Package 所依賴的其它 Package。如果 pubspec.lock 文件已經存在,則根據該文件中保存的依賴項版本獲取對應的依賴項。如有必要,將會創建或更新該文件。

更新 package 依賴

當妳添加壹個 package 後首次運行 flutter pub get, Flutter 將會保存在 pubspec.lock lockfile 中找到的具體 package 版本。這將確保當妳或者團隊中其他開發者運行 flutter pub get 後能得到相同版本的 package。

如果妳想升級到 package 的最新版本,比如使用 package 的最新特性,請運行 flutter pub upgrade 。這將檢索妳在 pubspec.yaml 文件中指定的版本約束所允許的最高可用版本。

案例

在flutter項目中導入hive包,在pubspec.yaml文件中添加配置:

執行flutter pub get,可以在 pubspec.lock 中看到 hive 版本是2.1.0,這是因為目前hive的最新版本是2.1.0,配置“^”表示向最新版本兼容,具體可查看Package版本管理( /tools/pub/versioning ),所以再執行flutter pub upgrade 可以看到版本還是2.1.0,這個時候會發現pub get和 pub upgrade 效果壹樣。

但是未來如果 hive 發布了2.2.0版本,這個時候使用flutter pub get在pubspec.lock中看到hive版本依舊是2.1.0,而執行flutter pub upgrade 後在pubspec.lock中看到hive版本就是2.2.0。

現在先在flutter 項目的pubspec.yaml文件添加配置,指定hive版本是2.0.5,如下:

這個時候執行flutter pub get後,可以在pubspec.lock的文件中看到hive版本是2.0.5,如果這個時候更改配置為 hive: ^2.0.5,再執行flutter pub get就會發現在pubspec.lock的文件中看到hive版本還是2.0.5,這個時候可以執行flutter pub outdated查看依賴的每個 package,如下圖,

可以看到,Upgrable項hive版本號為2.1.0,執行flutter pub upgrade 後可以看到在pubspec.lock的文件中看到hive版本是2.1.0

在pubspec.yaml文件添加配置:

lxx_package_demo信息如下圖:

執行flutter pub get後在pubspec.lock中看到flutter_log版本是0.0.1

現在修改lxx_package_demo版本號為0.0.2,再執行flutter pub get

會發現版本會及時更新為0.0.2,這個時候執行flutter pub get/upgrade效果壹樣

參考文檔:

blogs.com/lulushen/p/14150544.html