flutter第三方依赖冲突如何排查

为什么会存在版本依赖问题

我们在开发flutter项目中,常常会依赖第三方库。flutter依赖项越多,就越有可能出现依赖版本冲突。

它的pubspec.yaml文件应该看上去是这样的


image.png

我们可以通过报错信息清楚地看到,这是由于flutter_blue 和 shared_preferences_settings共同依赖的rxdart产生冲突所导致的。

解决方法

当我们不清楚当前到底应该使用依赖的哪一个版本时,我们可以使用any来解决版本依赖版本冲突的问题。


image.png

any会自动调用pub的版本分析器,寻找合适的能够避免冲突的依赖版本并下载。我们将不会再看到pub抱怨版本依赖版本冲突啦!

any关键字不要使用

在实际项目开发中,拥有不确定性的版本号会成为未来应用崩溃的一个极大的隐患。这可能将会使您的应用难以调试。所以请记住,不要在你的项目中留下any关键字!,所以我们需要将正确的依赖版本把any关键字替换掉!

使用pubspec.lock找到正确的版本

我们打开pubspec.lock,这是根据当前项目依赖所生成的文件,记录了当前使用的依赖版本。

image.png

我们可以在这里找到版本分析器为我们找到的无冲突的依赖版本号,这里可以看到build_runner使用了0.8.3版本的依赖。

再回到pubspec.yaml文件,将any版本号替换成实际版本。

image.png

这样就可以完美解决版本依赖问题啦~

部分其他解决方法,请查看以下博文:flutter引用冲突解决

你可能感兴趣的:(flutter第三方依赖冲突如何排查)