Flutter packages get无法安装新的包。

32

我正在尝试在Flutter中安装一个包(dynamic_theme)。当我运行flutter packages get -v时,它甚至不尝试安装该包。

到目前为止,我已经尝试过:

  • 运行flutter packages get
  • 重新启动我的电脑
  • 更新Flutter
  • 添加另一个包,但也未安装
  • 更新Android Studio

在我的pubspec.yaml文件中,我已经放置了:

dependencies:
  flutter:
    sdk: flutter
  firebase_core:
  cupertino_icons: ^0.1.2
  dynamic_theme: ^1.0.1 # the package does not install
  uuid: 2.0.0 # the package does not install

在详细运行flutter packages get时的日志中,当安装包时,它会输出:

[ +422 ms] Running "flutter packages get" in quiz_app... (completed in 0.4s)
[  +57 ms] Found plugin firebase_core at E:\Other\SDKs\flutter\.pub-cache\hosted\pub.dartlang.org\firebase_core-0.3.4\
[  +13 ms] Found plugin shared_preferences at E:\Other\SDKs\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences-0.5.2\
[ +141 ms] Found plugin firebase_core at E:\Other\SDKs\flutter\.pub-cache\hosted\pub.dartlang.org\firebase_core-0.3.4\
[   +6 ms] Found plugin shared_preferences at E:\Other\SDKs\flutter\.pub-cache\hosted\pub.dartlang.org\shared_preferences-0.5.2\
[  +26 ms] "flutter get" took 718ms.

我原以为Flutter会自动下载和安装软件包,但实际上它只是检查已安装软件包的更新,例如firebase_core


为什么你没有firebase_core的版本?这是复制粘贴错误还是你实际的pubspec.yaml文件?我认为这可能是你的问题(看着你的注释)。目前可用的版本是0.3.4 - tomerpacific
我认为不指定版本会自动获取最新版本,但我可以尝试更改它。 - Alve
"flutter clean" 没有改变任何东西。启动新项目也没有安装包。我尝试安装 UUID 包,我知道它是有效的,但它也没有安装。 - Alve
@Alive - 没有动态主题包,其他包是否能够成功安装? - tomerpacific
尝试使用双引号将"^1.0.1"括起来。 - primo
显示剩余3条评论
22个回答

52

关闭并重新打开编辑器。这对我起作用了 ;)


我在这件事上已经快要失去理智了。难以置信。谢谢。 - Andre Pena

43

基本上就运行:

flutter clean

flutter packages get

flutter packages upgrade

重新启动Android Studio或Visual Studio。

您可以通过以下方式重启VSC:

ctrl + shift + P,然后将出现一个搜索栏,然后键入:“ restart ”并按下Enter键。


21

嗨,我有一个类似的问题。我从dart packages文件夹中删除了一个包,当我运行flutter pub run时,它无法下载和工作,所以我尝试了所有人说的方法,但对我起作用的是我尝试修复pub cache,然后它就可以工作了。只需运行:

flutter pub cache repair

谢谢,reza47。在移除后尝试重新安装相同的软件包时,我遇到了同样的问题,直到尝试了您的建议才解决了问题。 - dwcho
只有重新启动才能解决我的问题。不过,这也帮助我解决了其他类似的问题! - Oprimus
对我来说,那个命令是 flutter clean 然后是 flutter pub get。 - Ahmed Nabil
谢谢,这解决了我在构建iOS版本时geolocator包的问题。之前失败了,但是在我尝试了你的命令行之后,现在它可以工作了! - undefined

9

我目前遇到了这种情况。进一步研究后发现,这些软件包实际上从未安装到Flutter软件包文件夹中。

我得到的反应是退出代码0,没有实际错误被报告。

当我输入我的导入'package:english_words/english_words.dart';时,它只会显示问题。


6
安装包需要在 dependencies: 后按两次回车键,然后输入包名,例如:carousel_pro: ^1.0.0。在 pubspec.yaml 文件中,换行、空格和回退键都很重要。希望这解决了问题。

它解决了我的问题,而且很有趣:) - erkan demir

6
在Visual Studio Code中,对我有用的方法是按下 Command+Shift+P,然后搜索“Dart: restart analysis server”并在弹出的栏目中选择。等待分析完成后,它就能像魔术般运行了。

1
在Android Studio中,使用“F1”键重启Dart分析服务器也可以奏效。 - Regular Jo
这真是一个真正的冠军!它工作得像个天才!谢谢哦。 - undefined

4
如果您从外部库(Dart Packages)中删除一个软件包,您需要运行这个命令:flutter pub cache repair。这将重新安装所有外部库并更新缺失的内容。接着运行Get dependencies或者Pub get即可恢复使用。

3

如果您正在使用Android Studio,那么进入“文件-无效缓存/重启”就是您的朋友。

这是帮助我获取Android Studio更新依赖项的方法。


重启后即使使用VS Code也能正常工作,这很奇怪但确实有效。 - Arham Anees

2

某些问题是随机解决的。我什么也没做,只是尝试了多次。经过大约10次尝试后,它成功下载并安装了uuid和dynamic_theme。


2

当我的项目在Google Drive文件夹中有空格路径时,我遇到了相同的问题。我将其移动到Android Studio文件夹中,然后pub get正常工作。


不确定为什么会被踩。这对我有用,感觉有点不公平。 - rjh500
1
别担心,我来了,+1就行 :) - Petro

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接