【问题标题】:no cached version available for offline mode没有可用于离线模式的缓存版本
【发布时间】:2016-09-21 09:54:19
【问题描述】:

在办公室,我在代理后面。互联网访问受到限制。

所以我在家中执行了 gradle 同步,并将 C:\Users\username.gradle 中的文件夹“.gradle”从我的家用 PC 复制到我办公室 PC 上的相同位置。

现在在我的办公室 PC 上,我将 Android Studio 中的 gradle 设置为“脱机工作”,但每当我尝试执行 gradle 同步时,我都会收到错误提示

Error: Could not download google-services.jar (com.google.gms:google-services:3.0.0): No cached version available for offline mode

但是,在挖掘“.gradle”文件夹时,我能够在以下位置找到 google-service.jar 文件

C:\Users\username\.gradle\caches\modules-2\files-2.1\com.google.gms\google-services\3.0.0\32b833222c886ecfb37d79b1a05ce1eddb702db1

我不确定如何继续。请帮忙。

【问题讨论】:

标签: android android-studio gradle intellij-idea android-gradle-plugin


【解决方案1】:

在2019.2版本中我不得不为此挖掘了很长时间。此选项已在 UI 中移动。它现在位于 gradle 工具的工具栏中:

请参阅https://www.jetbrains.com/help/idea/jetgradle-tool-window.html#offline 上的 JetBrains 文档

【讨论】:

  • @NevinChen 我想完全放弃它,使用 eclipse.. 人们习惯于设置
  • 哇,感谢您的发现,我什至没有看到按钮。因为我的 Gradle 侧边栏变窄了,所以它被隐藏了。
  • 谢谢!它切换到在线模式!
  • 不,不应该,这个答案完全是针对不同的问题!由于互联网受限,OP 需要在离线模式下工作,并且正在尝试使其工作。
  • 它解决了我的问题,所以我很高兴。值得注意的是:当您单击它时,图标不会改变,只是背景从灰色变为透明。这让我有点困惑。
【解决方案2】:

当您的 Android Studio 的 Gradle 工具离线模式选项处于启用状态时,会发生此错误。

启用后它看起来像这样。

要修复它,您可以通过单击下面屏幕截图中显示的选项来禁用模式。

【讨论】:

【解决方案3】:

> 更新:我听说 Google 听取了建议!现在在新的 android studio 版本中,当你开始一个新项目时,会弹出一个弹出窗口,可以选择使用 gradle 在线或离线构建。对你们所有人来说都很棒。。


您需要重新启用您的 gradle 在线模式

Google 更改了执行此操作的位置... 在这个时候的最新版本之后,我正在输入这个答案,它是下面的版本 Android Studio 3.6.1 建于 2020 年 2 月 27 日

我已向他们发送了一条消息,因此 Google 会在下一次更新中对此进行更改。因为新位置会使习惯于旧方式的软件工程师感到困惑... 但现在请按照这些明确的 2 个步骤来找到它并轻松地将其切换为在线或离线..

  1. 只需转到 SDK 的右上角,然后单击垂直 Gradle 选项卡如下我的图片中红色圈出的那样...

  2. 然后你点击 这个图标(它看起来像一个电气原理图电路中的符号)在出现的 gradle 表上.. 如下图红色圆圈所示..

【讨论】:

    【解决方案4】:

    也许可以帮助某人。只需在“命令行选项”中删除--offline

    【讨论】:

    • 我这里有空字符串,所以没有
    【解决方案5】:

    似乎在较新版本的 IntelliJ(我在 2018.1)中,您可能需要取消选中 Gradle 首选项中的离线复选框。

    【讨论】:

      【解决方案6】:

      仅供参考2019.1 Ultimate IntelliJ,转到 Gradle -> 设置(右上角的图标)-> 在 Global Gradle 设置中取消选中 离线工作

      Gradle 选项卡未显示,请转到查看 -> 工具窗口 -> Gradle 先显示它。

      【讨论】:

      • 当我打开 gradle 部分但看不到离线部分时,2019.2 Ultimate 看起来完全不同。也许我在其他地方有这个设置。
      • 在我的例子中是一个命令行选项,看看它stackoverflow.com/a/59376069/2238515
      【解决方案7】:

      我在 MacBook 上使用 android studio

      第 1 步 - 点击左侧的 android studio 进入偏好设置 最上角。

      第 2 步 - 进入构建、执行、部署。

      第 3 步 - 最后选择 Gradle。

      第 4 步 - 然后,取消选中离线工作。点击应用然后确定。

      第 5 步 - 最后尝试再次同步。

      希望这会奏效,因为它对我有用。

      【讨论】:

      【解决方案8】:

      除了 --offline 标志之外,尝试使用 --debug 标志运行 gradle。这会告诉你它在哪里寻找文件。

      错误的一个可能原因是 .gradle 文件夹的路径在您的家庭和办公室 PC 之间不同,可能是因为您的用户名在每台计算机上不同。 .gradle 缓存使用绝对路径(参见 .gradle/caches/modules-2/metadata-2.16/artifact-at-repository.bin 示例)。这是一个记录在案的 Gradle 问题:https://discuss.gradle.org/t/copying-the-gradle-cache-to-another-machine/7546/13。如果可能,在家中使用相同的 GRADLE_HOME 并努力解决问题。

      【讨论】:

        【解决方案9】:

        你可以在你的 settings.gradle 中设置startParameter.offline=false

        【讨论】:

          【解决方案10】:

          How to configure gradle to work "offline" (using cached dependencies)

          取消选中 Global Gradle 设置下的“离线工作”可以解决我的问题。

          【讨论】:

          • 真的吗?什么有趣的新闻
          【解决方案11】:
          1. 点击右侧的gradle
          2. 切换离线模式
          3. 再试一次(与 gradle 文件同步)

          【讨论】:

            猜你喜欢
            • 2014-05-01
            • 1970-01-01
            • 2018-01-08
            • 2017-08-19
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2017-12-22
            • 2018-11-28
            相关资源
            最近更新 更多