【问题标题】:flutter pub get is stuckingflutter pub get 卡住了
【发布时间】:2020-05-24 22:32:54
【问题描述】:

当我在终端运行时 flutter pub get 卡住了它正在显示

操作系统 MacOS Catalina 10.15.3

Got TLS error trying to find package launch_review at https://pub.dartlang.org.                                    
pub get failed (server unavailable) -- attempting retry 1 in 1 second...                                           
Got socket error trying to find package launch_review at https://pub.dartlang.org.                                 
pub get failed (server unavailable) -- attempting retry 2 in 2 seconds...                                          
Got TLS error trying to find package launch_review at https://pub.dartlang.org.                                    
pub get failed (server unavailable) -- attempting retry 3 in 4 seconds...                                          
Got socket error trying to find package launch_review at https://pub.dartlang.org.                                 
pub get failed (server unavailable) -- attempting retry 4 in 8 seconds...                                          
Got socket error trying to find package launch_review at https://pub.dartlang.org.                              

【问题讨论】:

  • 当您删除启动审查包时,您的 pubspec.yaml 是否以退出代码 0 结尾
  • 不,我刚刚终止了我的命令

标签: android flutter flutter-dependencies flutter-packages


【解决方案1】:

解释前的快速修复:

  • 重启你的路由器!多次为我工作。
  • 确保您的网络没有使用代理
  • 确保您可以 pingpub.dev 而不会丢失任何数据包
  • 尝试关闭所有 dart.exe 进程,然后重新尝试执行 flutter pub get
  • 尝试从您的 pubspec.yaml 中删除现有包,然后重新获取它以查看它是否有效
  • 尝试manually add the package到你的项目

所以,我有(有时仍然有)同样的问题。我对其进行了分析并得出结论,包下载管理器和托管这些包的服务器根本不可靠。非常小的包可能会通过“flutter pub get”成功导入,而大包可能会永久下载。这绝对是一个网络问题,无论是您自己还是他们。

只是为了验证我们确实遇到了同样的问题:

  1. 打开您的 cmd(无论操作系统如何)并运行:ping -t pub.dev。现在,如果您看到来自服务器的那些不一致的回复,则意味着网络有问题(您或他们的一方)。这看起来像这样:

  2. 打开您的任务管理器并查找最新的 dart.exe 任务(它应该在您 flutter pub get 的那一刻被调用。此任务是正在下载的包。如果您看到进程大小永远不会超过一定大小,get命令仍然卡住,它只表示网络问题,包可能永远不会成功下载。例如,我尝试获取carousela_flutter 1.4.1包的结果是进程停止大小约为 60mb,如下所示:

如果你等待的时间比较长(我会说 10 分钟就够了),连接问题仍然没有解决,你会看到来自 Flutter 的以下消息: “进程以退出代码 0 结束”。

我建议你再试一次或maually add the package

p.s:并不是所有的包裹都会发生这种情况,从我的调查来看,这似乎与它的大小有关。例如,我设法获得了 carousela_flutter 0.7.0 包,但 1.4.1 失败了。

【讨论】:

  • 我只是想让人们知道路由器重启是必须尝试的。按预期工作就像一个魅力
【解决方案2】:

在我的情况下,我的 ISP 的主机被阻止,因此它无法获取包,并且显示 pub get failed (server不可用) -- 尝试在 1 秒内重试 1...

于是我打开我的 VPN 并再次尝试,这次成功了

【讨论】:

    【解决方案3】:

    这是一个powershell代码,大家可以在终端上在VSCode和Android Studio上运行,回车即可轻松解决问题!

    在 powershell 中,执行:

    setx PUB_HOSTED_URL "https://pub.flutter-io.cn"
    setx FLUTTER_STORAGE_BASE_URL "https://storage.flutter-io.cn"
    

    【讨论】:

      【解决方案4】:

      502 Bad Gateway 试图在 https://pub.dartlang.org 找到包 package_name。 如果您单击该链接,您会发现该网站已关闭。这同样适用于https://pub.dev/

      【讨论】:

        【解决方案5】:

        如前所述,这可能与您的网络有关.... 断开并重新连接固定矿井。

        【讨论】:

          【解决方案6】:

          确保没有防火墙阻止它。

          也检查互联网连接。搜索你的浏览器,不要依赖windows wifi符号。

          对我来说,KIS (Kaspersky) 阻止了 pub.bat。 如果是这种情况,请同时检查——Flutter、dart、android studio、Gradlew.bat、sdkmanager.bat、adb.exe、qemu-systems、emulator-check 和 google 是否有任何阻塞。 (只需在防火墙设置中搜索)。

          【讨论】:

            【解决方案7】:

            就我而言,是我的病毒程序(AVG AntiVirus' Web Shield)突然导致 pub get 失败。

            【讨论】:

              【解决方案8】:

              我已经在我的 Windows 机器上解决了。

              在许多讨论的答案中多次尝试之后,我尝试了很多东西,例如:

              • 重启机器

              • 删除缓存文件夹(dart-sdk下载可能会重启)

              • 在环境变量路径中添加 dart-sdk

                X:\Dev\Flutter\bin\cache\dart-sdk\

              • 在 Path 变量中添加 dart-sdk 的 bin 文件夹(用于环境变量和用户变量)(我知道这是绝望的操作)

                X:\Dev\Flutter\bin\cache\dart-sdk\bin

              还是没用。

              但是...我在 this thread 上发现了一些关于代理问题的信息。

              然后我决定在我的 Windows 机器上试用它,它(终于)奏效了。

              尝试在 Power Shell 上输入:

              $Env:https_proxy="your.proxy.here:8080"
              

              然后再试flutter doctor

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2023-01-18
                • 2020-03-24
                • 1970-01-01
                • 1970-01-01
                • 2020-07-17
                • 2019-10-19
                • 2021-02-11
                • 2020-11-13
                相关资源
                最近更新 更多