"flutter pub get"无法获取依赖插件。

12

我一直在尝试在Windows上获取我的Flutter项目的依赖项,但是这需要很长时间,过了一会儿后,在“消息”栏中显示了以下错误。

Running "flutter pub get" in badhan_blood_bank...               
OS Error: The semaphore timeout period has expired.

, errno = 121, address = storage.googleapis.com, port = 53515

pub get failed (server unavailable) -- attempting retry 1 in 1 second...

我试着用几种方法解决这个问题,但都没有成功。在我的项目中添加 url_launcher 依赖之前,一切工作都很好。我尝试了 flutter clean、flutter upgrade 并重新启动 Android Studio,但最后仍然遇到同样的问题。

以下是我的 pubspec.yaml 文件:

version: 1.0.0+1

environment:
  sdk: ">=2.1.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter

  cupertino_icons: ^0.1.2
  firebase_auth: ^0.15.5+2
  flutter_facebook_login: ^3.0.0
  flutter_icons: ^1.0.0+1
  flutter_spinkit: ^4.1.2
  firebase_database: ^3.1.3
  google_maps_flutter: ^0.5.25
  geolocator: ^5.3.0
  intl: ^0.16.1
  curved_navigation_bar: ^0.3.2
  fluttertoast: ^4.0.1
  url_launcher: ^5.4.2



dev_dependencies:
  flutter_test:
    sdk: flutter

flutter:
  uses-material-design: true

  assets:
  - images/
在运行“flutter pub get --verbose”后显示:
[  +27 ms] executing: [C:\src\flutter\flutter\] git -c log.showSignature=false log -n 1 --pretty=format:%H
[  +64 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] 0b8abb4724aa590dd0f429683339b1e045a1594d
[        ] executing: [C:\src\flutter\flutter\] git describe --match v*.*.* --first-parent --long --tags
[  +56 ms] Exit code 0 from: git describe --match v*.*.* --first-parent --long --tags
[        ] v1.12.13+hotfix.8-0-g0b8abb472
[   +7 ms] executing: [C:\src\flutter\flutter\] git rev-parse --abbrev-ref --symbolic @{u}
[  +41 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/stable
[        ] executing: [C:\src\flutter\flutter\] git ls-remote --get-url origin
[  +38 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[  +77 ms] executing: [C:\src\flutter\flutter\] git rev-parse --abbrev-ref HEAD
[  +41 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] stable
[  +48 ms] Artifact Instance of 'AndroidMavenArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +4 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[ +130 ms] Running "flutter pub get" in badhan_blood_bank...
[   +5 ms] Using C:\src\flutter\flutter\.pub-cache for the pub cache.
[   +1 ms] executing: [D:\@@MyWorks\mahmud\Badhan Blood Bank\badhan_blood_bank\] C:\src\flutter\flutter\bin\cache\dart-sdk\bin\pub.bat --verbose get
--no-precompile
[ +157 ms] FINE: Pub 2.7.0
[   +3 ms] IO  : Spawning "cmd /c ver" in D:\@@MyWorks\mahmud\Badhan Blood Bank\badhan_blood_bank\.
[   +7 ms] IO  : Finished ver. Exit code 0.
[   +1 ms]     | stdout:
[        ]     | | 
[   +1 ms]     | | Microsoft Windows [Version 10.0.18362.720]
[   +1 ms]     | Nothing output on stderr.
[ +102 ms] MSG : Resolving dependencies...
[   +9 ms] SLVR: fact: badhanbloodbank is 1.0.0+1
[   +5 ms] SLVR: derived: badhanbloodbank
[  +61 ms] SLVR: fact: badhanbloodbank depends on flutter any from sdk
[   +1 ms] SLVR: fact: badhanbloodbank depends on cupertino_icons ^0.1.2
[   +1 ms] SLVR: fact: badhanbloodbank depends on firebase_auth ^0.15.5+2
[   +1 ms] SLVR: fact: badhanbloodbank depends on flutter_facebook_login ^3.0.0
[   +1 ms] SLVR: fact: badhanbloodbank depends on flutter_icons ^1.0.0+1
[   +1 ms] SLVR: fact: badhanbloodbank depends on flutter_spinkit ^4.1.2
[        ] SLVR: fact: badhanbloodbank depends on firebase_database ^3.1.3
[        ] SLVR: fact: badhanbloodbank depends on google_maps_flutter ^0.5.25
[        ] SLVR: fact: badhanbloodbank depends on geolocator ^5.3.0
[        ] SLVR: fact: badhanbloodbank depends on intl ^0.16.1
[        ] SLVR: fact: badhanbloodbank depends on curved_navigation_bar ^0.3.2
[        ] SLVR: fact: badhanbloodbank depends on fluttertoast ^4.0.1
[        ] SLVR: fact: badhanbloodbank depends on url_launcher ^5.4.2
[        ] SLVR: fact: badhanbloodbank depends on flutter_test any from sdk
[        ] SLVR:   selecting badhanbloodbank
[        ] SLVR:   derived: flutter_test any from sdk
[        ] SLVR:   derived: url_launcher ^5.4.2
[   +1 ms] SLVR:   derived: fluttertoast ^4.0.1
[   +1 ms] SLVR:   derived: curved_navigation_bar ^0.3.2
[        ] SLVR:   derived: intl ^0.16.1
[   +1 ms] SLVR:   derived: geolocator ^5.3.0
[   +1 ms] SLVR:   derived: google_maps_flutter ^0.5.25
[   +1 ms] SLVR:   derived: firebase_database ^3.1.3
[        ] SLVR:   derived: flutter_spinkit ^4.1.2
[        ] SLVR:   derived: flutter_icons ^1.0.0+1
[        ] SLVR:   derived: flutter_facebook_login ^3.0.0
[        ] SLVR:   derived: firebase_auth ^0.15.5+2
[        ] SLVR:   derived: cupertino_icons ^0.1.2
[        ] SLVR:   derived: flutter any from sdk
[        ] IO  : Get versions from https://pub.dartlang.org/api/packages/url_launcher.
[   +9 ms] IO  : HTTP GET https://pub.dartlang.org/api/packages/url_launcher
[   +2 ms]     | Accept: application/vnd.pub.v2+json
[   +1 ms]     | X-Pub-OS: windows
[        ]     | X-Pub-Command: get
[        ]     | X-Pub-Session-ID: 795584D9-523C-4575-B686-2D496C324C5B
[        ]     | X-Pub-Environment: flutter_cli:get
[   +1 ms]     | X-Pub-Reason: direct
[        ]     | user-agent: Dart pub 2.7.0
[ +934 ms] IO  : HTTP response 200 OK for GET https://pub.dartlang.org/api/packages/url_launcher
[   +5 ms]     | took 0:00:00.938247
[   +2 ms]     | transfer-encoding: chunked
[   +2 ms]     | date: Sun, 29 Mar 2020 19:47:07 GMT
[   +2 ms]     | content-encoding: gzip
[   +2 ms]     | vary: Accept-Encoding
[   +3 ms]     | strict-transport-security: max-age=31536000; preload
[   +3 ms]     | via: 1.1 google
[   +2 ms]     | content-type: application/json
[   +2 ms]     | x-frame-options: SAMEORIGIN
[   +2 ms]     | x-xss-protection: 1; mode=block
[   +2 ms]     | x-content-type-options: nosniff
[   +2 ms]     | server: dart:io with Shelf
[  +66 ms] SLVR:   fact: flutter_test 0.0.0 from sdk depends on flutter any from sdk
[   +1 ms] SLVR:   fact: flutter_test 0.0.0 from sdk depends on test_api 0.2.11
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on path 1.6.4
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on image 2.1.4
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on quiver 2.0.5
[   +1 ms] SLVR:   fact: flutter_test 0.0.0 from sdk depends on stack_trace 1.9.3
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on vector_math 2.0.8
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on archive 2.0.11
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on args 1.5.2
[   +1 ms] SLVR:   fact: flutter_test 0.0.0 from sdk depends on async 2.4.0
[   +1 ms] SLVR:   fact: flutter_test 0.0.0 from sdk depends on boolean_selector 1.0.5
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on charcode 1.1.2
[   +1 ms] SLVR:   fact: flutter_test 0.0.0 from sdk depends on collection 1.14.11
[   +1 ms] SLVR:   fact: flutter_test 0.0.0 from sdk depends on convert 2.1.1
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on crypto 2.1.3
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on matcher 0.12.6
[   +2 ms] SLVR:   fact: flutter_test 0.0.0 from sdk depends on meta 1.1.8
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on pedantic 1.8.0+1
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on petitparser 2.4.0
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on source_span 1.5.5
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on stream_channel 2.0.0
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on string_scanner 1.0.5
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on term_glyph 1.1.0
[        ] SLVR:   fact: flutter_test 0.0.0 from sdk depends on typed_data 1.1.6
[   +1 ms] SLVR:   fact: flutter_test 0.0.0 from sdk depends on xml 3.5.0
[        ] SLVR:     selecting flutter_test 0.0.0 from sdk
[        ] SLVR:     derived: xml 3.5.0
[        ] SLVR:     derived: typed_data 1.1.6
[   +1 ms] SLVR:     derived: term_glyph 1.1.0
[        ] SLVR:     derived: string_scanner 1.0.5
[        ] SLVR:     derived: stream_channel 2.0.0
[   +2 ms] SLVR:     derived: source_span 1.5.5
[        ] SLVR:     derived: petitparser 2.4.0
[        ] SLVR:     derived: pedantic 1.8.0+1
[        ] SLVR:     derived: meta 1.1.8
[   +3 ms] SLVR:     derived: matcher 0.12.6
[        ] SLVR:     derived: crypto 2.1.3
[        ] SLVR:     derived: convert 2.1.1
[   +1 ms] SLVR:     derived: collection 1.14.11
[        ] SLVR:     derived: charcode 1.1.2
[        ] SLVR:     derived: boolean_selector 1.0.5
[        ] SLVR:     derived: async 2.4.0
[   +1 ms] SLVR:     derived: args 1.5.2
[   +4 ms] SLVR:     derived: archive 2.0.11
[   +1 ms] SLVR:     derived: vector_math 2.0.8
[   +4 ms] SLVR:     derived: stack_trace 1.9.3
[   +1 ms] SLVR:     derived: quiver 2.0.5
[        ] SLVR:     derived: image 2.1.4
[   +1 ms] SLVR:     derived: path 1.6.4
[   +1 ms] SLVR:     derived: test_api 0.2.11
[   +1 ms] SLVR:     fact: url_launcher >=3.0.0 depends on flutter any from sdk
[        ] SLVR:     fact: url_launcher >=5.4.0 depends on url_launcher_macos ^0.0.1
[   +1 ms] SLVR:     fact: url_launcher >=5.4.1 depends on url_launcher_platform_interface ^1.0.4
[   +1 ms] SLVR:     fact: url_launcher >=5.3.0 depends on url_launcher_web ^0.1.0+1
[   +1 ms] SLVR:       selecting url_launcher 5.4.2
[        ] SLVR:       derived: url_launcher_web ^0.1.0+1
[        ] SLVR:       derived: url_launcher_platform_interface ^1.0.4
[        ] SLVR:       derived: url_launcher_macos ^0.0.1
[   +1 ms] IO  : Get versions from https://pub.dartlang.org/api/packages/url_launcher_web.
[   +1 ms] IO  : HTTP GET https://pub.dartlang.org/api/packages/url_launcher_web
[        ]     | Accept: application/vnd.pub.v2+json
[        ]     | X-Pub-OS: windows
[        ]     | X-Pub-Command: get
[        ]     | X-Pub-Session-ID: 795584D9-523C-4575-B686-2D496C324C5B
[        ]     | X-Pub-Environment: flutter_cli:get
[        ]     | user-agent: Dart pub 2.7.0
[ +429 ms] IO  : HTTP response 200 OK for GET https://pub.dartlang.org/api/packages/url_launcher_web

问题是什么,如何解决?

4个回答

15

从昨天开始,孟加拉国访问 storage.googleapis.com 出现了一些问题。

起初我以为这可能是 Google 基础设施出了问题。
但是,过了一段时间后我意识到这是 BTCL 出了问题。

为了解决这个问题,您可以使用 VPN 工具并重新运行您的项目。
我使用了 Hotspot Shield VPN,之后一切都好了。

请记住,免费版本的数据流量限制是 500 MB/Day

希望这对你也有帮助。


每天只有500 MB?我今天仅用几个小时作为免费用户使用Hotspot Shield下载了超过2 GB的数据,没有任何问题。请问您从哪里获取这些信息? - Nahiyan
@Nahiyan 你可以在这里查看:https://support.hotspotshield.com/hc/zh-cn/articles/202439074-Hotspot-Shield-%E6%9C%89%E6%95%B0%E6%8D%AE%E5%B8%A6%E5%AE%BD%E4%BD%BF%E7%94%A8%E9%99%90%E5%88%B6%E5%90%97- - Shariful Islam Mubin

7
'flutter pub get' 会尝试获取在你的pubspec.yaml文件中声明的插件,默认情况下会向 pub.dev 或者 https://pub.dartlang.org 发送 GET 请求。如果你的 ISP 或公司的防火墙阻止了 https://pub.dartlang.org 或 storage.googleapis.com,你将无法完成包的获取,也无法构建你的 Flutter 项目。 除了使用 VPN 外,我更喜欢使用镜像仓库。你只需要更改或设置两个环境变量为以下示例中的镜像链接即可。然后,“flutter pub get” 命令将尝试从指定的镜像链接获取您的包。这两个变量和链接分别是: * PUB_HOSTED_URL=https://pub.flutter-io.cn * FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn 对于 Windows,请在 cmd 中使用以下命令来设置你的项目环境变量:
set PUB_HOSTED_URL=https://pub.flutter-io.cn
set FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

请确保在项目目录下打开命令提示符窗口并使用“flutter pub get”命令获取指定的 cmd。 您可以通过应用以下命令来检查变量是否已设置:
echo %PUB_HOSTED_URL% 

输出应该是你刚刚设置的URL。

这些变量仅在此环境中设置,并且在关闭此终端时将被清除。因此对于Windows,如果您在系统用户环境中设置了这些变量,则可以随时使用'flutter pub get'并从中国镜像网站获取软件包。

对于Mac,在bash_profile中导出变量应该像这样:

 export PUB_HOSTED_URL=https://pub.flutter-io.cn
 export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

做完这些,你应该能够成功执行flutter pub get。(记得在设置变量后source你的bash_profile)

如果仍然无法获取依赖包: * 从项目中删除 pubspec.lock 文件。 * 重启计算机。 * 使用 echo 命令检查 PUB_HOSTED_URL 和 FLUTTER_STORAGE_BASE_URL 环境变量是否正确设置。

如果这些变量已经设置,flutter sdk 将尝试从你通过这些变量设置的镜像站点获取依赖包。如果这些变量在工作区环境中不存在,则 flutter sdk 将尝试使用其默认的urls获取依赖包。

N.B:当我的flutter无法工作时,我感到沮丧,重新安装了flutter sdk,然后在我的环境中设置了这些变量并从项目中删除了pubspec.lock文件。而且,奇迹发生了!它为我工作了。之后,经过一些挖掘,我发现我不必卸载和重新安装flutter。

希望你现在能够轻松地获取依赖包,祝你好运。


如何将这两个变量重置为默认值?PUB_HOSTED_URLFLUTTER_STORAGE_BASE_URL - Zahra
更改链接。查找您所在地区的默认URL并获取bashprofile或zshrc文件的源代码。 - Mohtasim

4
  1. 更新Flutter将不起作用
  2. 重启电脑将不起作用
  3. 创建新项目并运行pub get也将不起作用。

如果您来自孟加拉国,唯一的解决方案是暂时使用VPN。 BTCL存在一些网络问题,导致出现此问题。


这是不是谷歌存储API的禁令?它已经存在很长时间了。 - Nahiyan

-3

只需从IDE关闭项目,然后重新打开。 然后运行pub get。


如果与Dart分析相关,则无法工作 - Benyamin Beyzaie

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