URI的目标不存在 'package:english_words/english_words.dart'。

22

我正在使用Android Studio学习Flutter。我正在按照Flutter提供的逐步文档进行。在第二步:使用外部包时,我导入english_words包时遇到了问题。我已经在pubspec.yaml中正确添加了包并点击了获取Packages,它也添加了依赖项,但在导入lib/main.dart中的包时,会出现以下错误:

URI目标不存在 'package:english_words/english_words.dart'。

我在StackOverflow上看到了很多问题,但没有一个能帮助我。请帮帮我!

23个回答

26

对于某些包,一旦您完成本问题其他答案所描述的全部过程,您必须关闭Android项目并重新打开它。同样适用于模拟器。

有些包需要重启,而其他包则不需要。


1
重新启动VS Code编辑器后,问题已经解决。谢谢。 - Ketan Ramteke
2
对于这个完全相同的情况,重新启动Android Studio就解决了,不需要重新启动模拟器。 - Piyin
关闭并重新打开项目就解决了我的问题。我不需要重启整个Android Studio IDE。 - Chris Claude

15

pubspec.yaml文件中添加包后,您需要执行命令flutter packages get或在pubspec.yaml文件顶部的操作栏中单击"获取软件包"。

然后依赖项和任何传递依赖项将被添加到.packages文件中。

请查看:

https://flutter.io/using-packages/


11
是的,在Android Studio中,我点击了“获取包”(在上面的问题中忘记提到了)。但是它仍然出现错误。最后当我按照你提供的链接进行操作时,文档中说:“如果使用该包时出现MissingPluginException等错误,则可能需要完全重启应用程序。”因此,我关闭了项目并重新打开,问题得到解决。谢谢! :) - Vaibhav Dhunde
2
我按照上述所有步骤操作了,但是它没有起作用。之后,我关闭了Android Studio + 模拟器并重新打开,它就正常工作了。 - Kim Thành Vũ
我也遇到了同样的问题。关闭并重新打开Android Studio后问题得以解决。看起来是IDE的问题。 - Vighnesh Pai

5

解决方案(适用于VSCode):

  1. 在pubspec.yml文件中运行 flutter packages get 命令
  2. 重新启动VSCode

3

我曾经遇到同样的问题,按照以下步骤操作后问题得到了解决。 1. 添加这个包。

dependencies:
  flutter:
    sdk: flutter
  # The following adds the Cupertino Icons font to your application.
  # Use with the CupertinoIcons class for iOS style icons.
  cupertino_icons: ^0.1.2
  **english_words: ^3.1.5**

  1. 保存pubspec.yaml文件
  2. 进入终端并运行 'flutter packages get'
  3. 关闭模拟器并重新构建你的崭壳
  4. 再次运行main.dart,这样应该可以消除错误。

这是对我有效的解决方法,祝一切顺利。


当其他方法都不起作用时,构建工程是对我有效的方法。 - martinseal1987
我知道这已经晚了好几年,但我很好奇为什么你用 '**' 把它包起来,因为至少现在这是不必要的,而且实际上会破坏一切。0.0 - SLWW

3

请确保english_wordsflutter:在同一基线上: enter image description here


1
花费了我很多时间,但总的来说,只需保存文件pubspec.yaml即可。一旦保存,命令flutter pub get将会运行一次,然后您就可以导入包了。
无需重新启动编辑器等。

1

我使用了这个方法,没有使用加号和双引号中的版本号,它对我有效... 英文单词: "^3.1.5"


1
请确保英文单词在您的pubspec.yaml中对齐正确,因为它是“敏感于空格”的:

dependencies: english_words: ^3.1.5 //两个空格

同时,永远不要使用制表符对齐它,我不知道为什么,但它从来不起作用,也不要使用+号。

1
我的解决方案是在"dependencies:"之后,在"Flutter:"参数之前,不加"+"号,添加当前版本为"english_words: ^3.1.5"的依赖。希望能有所帮助。

0

有很多方法可以解决这个问题,大多数情况下在第二步就能解决,如果不行,请尝试第三种方法,它也会起作用。

  1. 在pubsec.yaml文件中运行flutter packages get(如果您使用的是VS Code,则会更容易)。

  2. 重新启动IDE。 现在检查一下,大多数情况下它会工作。如果不行,请尝试第三步。

  3. 您需要修复pub缓存

    flutter packages pub cache repair 我希望它能够起作用。如果所有方法都无法解决问题,请尝试重新安装flutter。


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