【问题标题】:Running flutter while offline - stuck on Resolving Dependencies脱机时运行颤振 - 停留在解决依赖关系上
【发布时间】:2019-08-15 12:01:05
【问题描述】:

我正在尝试在没有互联网连接的 PC 上设置 Flutter。 尝试运行应用程序(在物理 Nexus 5 上)时,我卡在“解决依赖关系”上,一段时间后,我收到“构建失败并出现异常”和大量下载失败消息。

我安装了所需的软件(包括 VSCode),并从我通常使用 Flutter 进行开发的另一台 PC 上复制了 flutter 和 gradle 文件夹。 颤振医生说我很好。我使用“flutter create --offline name_of_app”离线创建了应用程序。 即使我尝试使用 Android Studio 运行应用程序并将 gradle 设置为离线工作并且路径指向完整的 gradle 分发,也会发生这种情况。

错误是:

* Error running Gradle:
ProcessException: Process "C:\name_of_app\android\gradlew.bat" exited abnormally:

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'android'.
> Could not resolve all artifacts for configuration ':classpath'.
   > Could not download gradle.jar (com.android.tools.build:gradle:3.2.1)
      > Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.2.1/gradle-3.2.1.jar'.
         > Could not HEAD 'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.2.1/gradle-3.2.1.jar'.

它还继续提到其他文件名。

我错过了什么?断开互联网连接后,我可以在另一台 PC 上运行该应用程序。

提前致谢。

【问题讨论】:

  • 只需在线访问运行一次,当它下载gradle-3.2.1.jar(和其他需要的东西)后,您可以稍后离线运行它
  • 不幸的是,我根本无法将那台 PC 连接到互联网。自从我将 .gradle 文件夹从另一台(已连接的)PC 复制到那台 PC 后,所有必要的文件都已在该 PC 上,但无论出于何种原因,断开连接的 PC 都不会使用这些缓存文件。
  • 那么您是如何安装flutter 的,因为它在安装过程中需要访问互联网?
  • 我提前下载并安装了所需的软件(包括VSCode),并从我通常使用Flutter进行开发的另一台PC上复制了flutter和gradle文件夹。颤振医生说我很好。我使用“flutter create --offline name_of_app”离线创建了应用程序。
  • 然后使用google("copy gradle cache") - 它返回例如:discuss.gradle.org/t/…

标签: android gradle flutter dependencies


【解决方案1】:

作为编程和颤振的初学者,我提出这个答案时需要注意。它可以在我的机器(一台联想笔记本电脑)上的 Manjaro Linux 上运行。

我在编译阶段遇到的第一个问题是 -beta01 问题。可从 android studio 网站下载的 gradle 离线插件当前版本号为 3.5.0-beta01。通过某种自动化,'flutter create --offline' 在全局 build.gradle 文件中将依赖项设置为 gradle:3.5.0。我通过用 3.5.0-beta01 替换 3.5.0 解决了这部分问题。

第二个问题是编译器抱怨的一些缺少的依赖项。我将它们全部下载并放在 gradle 插件文件夹中(在 Linux 中是 /home/username/.android/manual-offline-m2/android-gradle-plugin-3.5.0-beta01/ - Android 工作室的推荐路径配置演练)。它们大多与 gradle 和 kotlin 相关。

当我解决了二阶依赖项时,工作就完成了。基本 Flutter 应用程序编译时没有错误,所有离线设置(全局 build.gradle 中的在线存储库路径被注释掉,互联网断开连接)。

对于离线使用,仅用于学习目的,我不打算更新颤振频道,也不会更新 maven 和 gradle 插件,因为使用没有互联网访问权限的计算机进行颤振的唯一原因是在初学者阶段......在克罗地亚的山区......至少那是我打算使用它的地方:D

【讨论】:

    猜你喜欢
    • 2019-08-17
    • 2020-10-07
    • 1970-01-01
    • 2022-11-18
    • 2021-11-29
    • 2014-05-25
    • 2019-12-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多