如何解决克隆使用旧sdk和程序包的项目后,如何解决所有sdk和依赖项问题?
我已经克隆了由Google开发者开发的hackernews项目,该项目在youtube上非常乏味。 在运行Flutter运行时,我遇到了这些错误。
The current Dart SDK version is 2.9.2.
Because no versions of test match >1.13.0 <1.14.0 and test >=1.16.0-nullsafety requires SDK version >=2.10.0-0 <2.10.0,test >1.13.0 <1.14.0-∞ or >=1.16.0-nullsafety is forbidden.
(1) So,because test >=1.3.0 <1.12.0 depends on boolean_selector ^1.0.0 and test >=1.12.0 <1.13.0 depends on test_api 0.2.14,test >=1.3.0 <1.13.0-∞ or >1.13.0 <1.14.0-∞ or >=1.16.0-nullsafety requires boolean_selector ^1.0.0 or test_api 0.2.14.
Because test >=1.14.5 <1.15.0 depends on test_api 0.2.16 and test >=1.13.0 <1.14.5 depends on test_api 0.2.15,test >=1.13.0 <1.15.0 requires test_api 0.2.15 or 0.2.16.
And because test >=1.15.0 <1.15.1 depends on test_core 0.3.8,test >=1.13.0 <1.15.1 requires test_api 0.2.15 or 0.2.16 or test_core 0.3.8.
And because test >=1.15.1 <1.15.2 depends on test_core 0.3.9 and test >=1.15.2 <1.15.3 depends on test_core 0.3.10,test >=1.13.0 <1.15.3 requires test_core 0.3.8 or 0.3.9 or 0.3.10 or test_api 0.2.15 or 0.2.16.
And because test >=1.3.0 <1.13.0-∞ or >1.13.0 <1.14.0-∞ or >=1.16.0-nullsafety requires boolean_selector ^1.0.0 or test_api 0.2.14 (1),test >=1.3.0 <1.15.3-∞ or >=1.16.0-nullsafety requires boolean_selector ^1.0.0 or test_api 0.2.14 or 0.2.15 or 0.2.16 or test_core 0.3.8 or 0.3.9 or 0.3.10.
And because every version of flutter_test from sdk depends on both boolean_selector 2.0.0 and test_api 0.2.17,if flutter_test any from sdk and test >=1.3.0 <1.15.3-∞ or >=1.16.0-nullsafety then test_core 0.3.8 or 0.3.9 or 0.3.10.
(2) So,because test >=1.15.3 <1.16.0-nullsafety depends on test_core 0.3.11 which depends on analyzer ^0.39.5,if flutter_test any from sdk and test >=1.3.0 then analyzer ^0.39.5.
Because no versions of built_value_generator match >6.5.0 <6.6.0 and built_value_generator >=6.6.0 <6.8.0 depends on analyzer >=0.34.0 <0.37.0,built_value_generator >6.5.0 <6.8.0 requires analyzer >=0.34.0 <0.37.0.
And because built_value_generator >=6.8.0 <7.0.4 depends on analyzer >=0.34.0 <0.39.0 and built_value_generator 6.5.0 depends on analyzer >=0.33.3 <0.37.0,built_value_generator >=6.5.0 <7.0.4 requires analyzer >=0.33.3 <0.39.0.
And because if flutter_test any from sdk and test >=1.3.0 then analyzer ^0.39.5 (2),one of flutter_test any from sdk or test >=1.3.0 or built_value_generator >=6.5.0 <7.0.4 must be false.
And because hn_app depends on built_value_generator ^6.5.0,flutter_test from sdk is incompatible with test >=1.3.0.
So,because hn_app depends on both test ^1.6.1 and flutter_test any from sdk,version solving failed.
Running "flutter pub get" in hn_app...
pub get failed (1; So,because hn_app depends on both test ^1.6.1 and
flutter_test any from sdk,version solving failed.)
解决方法
从pubspec.yaml中的依赖项中删除所有版本号,并让Flutter确定版本
示例:
替换此
test: ^1.15.0
test_core: 0.3.8
与此
test:
test_core:
,
由于某种原因,在dependency_overrides部分中添加分析器解决了此问题。这是我的pubspec.yaml文件的样子:
dev_dependencies:
build_runner: ^1.4.0
built_value_generator: ^6.5.0
moor_generator: ^1.4.0
dependency_overrides:
analyzer: '0.39.14'
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。