非预期Flutter剥绒警告:依赖于引用的包

scyqe7ek  于 2022-12-27  发布在  Flutter
关注(0)|答案(7)|浏览(211)

在我最近将flutter升级到3.0.0并将flutter_lints升级到2.0.1之后,我开始收到以下警告:

Depend on referenced packages.

这里导入的依赖是在当前模块已经依赖的另一个模块的pubspec.yaml中定义的,也就是说依赖流程如下:

A (module that gives warning and imports D) -> B -> D

我不明白为什么我会看到这个警告。仅仅是因为模块A不直接依赖于库D吗?我该怎么处理这个警告?我该如何消除它而不忽略analysis_options.yaml文件中的规则?

bq3bfh9z

bq3bfh9z1#

同样的警告。
在我的情况下,它是由扑动_局部化引起的。
我意识到我把

flutter_localizations:
    sdk: flutter

在dev_dependencies之下,而不是在pubspec.yaml中的依赖项之下。
也许你有相同或相似的问题。

pinkon5k

pinkon5k2#

您看到的是该lint的预期行为,如果没有该lint,如果不依赖所包含的库,则会出现错误,并且您正确地假设了一个可传递的依赖项就足以构建。
这里的lint很可能是为了防止依赖项删除或更改为具有破坏性更改的版本的情况,这样您的传递性使用就会破坏或无意中更改。
每一个短绒都包含了它们存在的原因的简短描述。

dz6r00yl

dz6r00yl3#

在我的例子中,它们都是pubspec.yaml中列出的其他包所需要的包(因此包含在其中),但由于我自己直接使用它们,因此必须将它们作为直接依赖项显式地添加到pubspec.yaml中。
一旦我将这些有问题的包添加到pubspec.yaml中,错误就消失了。

vyu0f0g1

vyu0f0g14#

分析_选项.yaml

include: package:flutter_lints/flutter.yaml

# Additional information about this file can be found at
# https://dart.dev/guides/language/analysis-options

linter:
  rules:
    depend_on_referenced_packages: false
yqyhoc1h

yqyhoc1h5#

我有所有的记录在pubspec.yaml在我的情况下,这是由Android工作室本身造成的。我不得不重新启动它,一切都开始正常工作

6pp0gazn

6pp0gazn6#

此错误建议您在pubspec.yaml文件中,将该软件包添加到dev-dependencies或dependencies中(取决于软件包文档中说明的用例)。 checkout this

此外,请确保按照包文档中的要求以正确的格式导入正确的包。

3ks5zfa0

3ks5zfa07#

检查以确保软件包位于“dependencies”下,而不是(例如)位于“dev_dependencies”下

相关问题