问题
当我们改动了pubspec.yaml
添加依赖包时,编辑器会提示Packages get
等按钮,当点击 Packages get
却发现一直卡在Running "flutter packages get" in flutter_app...
,显然,这是墙在搞事情,导致我们无法访问 Pub 服务,如同AndroidStudio导入项目时一直卡在 Building gradle project info 的问题一样。
解决办法
最简单的办法就是使用镜像。
- 打开命令行终端,执行以下命令,设置代理:
Mac :
export PUB_HOSTED_URL=https://pub.flutter-io.cn export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
Windows:
set PUB_HOSTED_URL=https://pub.flutter-io.cn set FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
- 进入项目根目录,执行 Packages get 命令
cd 项目根目录(`pubspec.yaml`所在目录) flutter packages get
执行后出现类似下面提示,说明执行成功
Waiting for another flutter command to release the startup lock... Running "flutter packages get" in flutter_app... 5.5s
注意
- 由于我们在命令行终端进行的操作,而不是在IDE中,因此打开
pubspec.yaml
时依然会有提示,不过我们已经可以使用添加的依赖包了。 - 上述代理地址并非永久有效,可以参考https://flutter.io/community/china 以获得有关镜像服务器的最新动态。