我有:
>pub upgrade
Resolving dependencies... (6.2s)
analyzer 0.18.0 (9 newer versions available)
angular 0.14.0
args 0.10.0+2 (5 newer versions available)
barback 0.13.0 (14 newer versions available)
bootjack 0.6.5+2
browser 0.10.0+2
code_transformers 0.1.6 (5 newer versions available)
collection 0.9.4 (1 newer version available)
di 2.0.2 (3 newer versions available)
dquery 0.7.0+4
html5lib 0.10.0 (4 newer versions available)
intl 0.11.9
logging 0.9.1+1 (2 newer versions available)
path 1.3.0
perf_api 0.0.9
petitparser 1.2.2
route_hierarchical 0.4.22 (1 newer version available)
shadow_dom 0.10.0
source_maps 0.9.4 (1 newer version available)
source_span 1.0.0
stack_trace 0.9.3+2 (6 newer versions available)
typed_mock 0.0.4
utf 0.9.0+1
所以我可以看到newer versions available
但如何更新它们呢?
直接或传递依赖项具有版本约束,不允许使用较新的版本。
在 Dart 中,一个包只能导入一个版本。
所有依赖项都需要就一个版本达成一致。
据我所知,Java 中有一个包A
可以导入包B
1.0版本及安装包C
即使当包裹C
进口B
在2.0版本中。
这在 Dart 中是不可能的,整个应用程序必须使用相同版本的B
.
为了找出阻止升级的原因,我通常会在我的pubspec.yaml
强制执行新版本。
跑步pub upgrade
然后显示哪个依赖项阻止升级。
添加依赖约束
dependencies:
html5lib: '>= 0.10.0'<
run
pub upgrade
检查结果
这通常需要多次迭代才能找出罪魁祸首。
pub deps -s list
显示所有依赖关系和约束的有用概述
您还可以添加一个dependency_overrides
给你的pubspec.yaml
.
dependency_overrides:
html5lib: '>= 0.10.0'
仅强制执行新版本并忽略可能的不兼容性。
(http://pub.dartlang.org http://pub.dartlang.org不允许上传包含以下内容的包dependency_overrides
.)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)