【问题标题】:Downgrade Gradle from 3.3 to 2.14.1将 Gradle 从 3.3 降级到 2.14.1
【发布时间】:2023-03-11 16:57:01
【问题描述】:

长话短说:我的安卓手机不断与亚行断开连接。我被告知要更新 android studio,就这样做了。我在 Intellij 中打开我的项目并尝试在 android 上运行,但出现错误:

BUILD FAILED

Total time: 48.986 secs

Error: /Users/me/Desktop/comp/Development/comp-ionic/platforms/android/gradlew: Command failed with exit code 1 Error output:
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':compileDebugJavaWithJavac'.
> java.lang.NullPointerException (no error message)

我的第一个想法是我的 gradle 是错误的版本。对于这个特定的应用程序,我需要使用 gradle 版本2.14.1

当我输入 gradle -v 时,我得到的是 3.3 版。

有没有办法将 gradle 从 3.3 删除/降级到 2.14.1?

或者这是另一个问题?

【问题讨论】:

  • USB 断开连接,我也遇到过,还以为是硬件问题,反正我现在用的是无线 adb :D
  • 我也一直在尝试无线,目前还可以,只是需要更长的时间
  • 天啊,这是软件问题吗?我怀疑我糟糕的 USB 端口和电缆:D
  • 我购买了 3 条不同的 USB 数据线...我读过很多论坛,他们一直说完全卸载然后安装最新的 android studio...这样做了,仍然断开连接,现在有了这个问题...
  • 我已经对这个问题投了赞成票,我们会看看我们是否能找到解决方案:D

标签: android intellij-idea gradle


【解决方案1】:

如果您使用的是 gradle 包装器,那么您的项目中将有一个名为“gradle”的文件夹和一个名为“wrapper”的子文件夹,其中有 2 个文件:
- gradle-wrapper.jar
- gradle-wrapper.properties

打开“gradle-wrapper.properties”并将显示“3.3”的位置更改为“2.14.1”。然后同步gradle,它会自动下载2.14.1。

如果您使用的是新的 2.3 Android Studio,则必须使用 gradle wrapper 3.3,因为它是支持的最低 gradle wrapper 版本。如果是这样,那么您将不得不下载 Android Studio 2.2,或者修复您的项目中需要 gradle wrapper 版本 2.14.1 的任何问题。

要获取有关问题的更多信息,请尝试运行以下命令: ./gradlew clean assemble -stacktrace

这将清理您的项目,尝试并编译它,如果/当它失败时,它将向您显示错误的堆栈跟踪。

【讨论】:

  • >如果您使用的是新的 2.3 Android Studio,您必须使用 gradle wrapper 3.3
  • 如果它确实适用于 Android Studio 2.2,那么这是一个非常糟糕的修复。不久之后,Android Studio 2.3 将成为稳定版本,然后您将被困在永远不会更新的过时版本上。最好解决您的问题并使用 Gradle Wrapper 3.3
  • 目前,降级 android studio 是解决办法。不过,我将与我的团队讨论 gradle 问题。谢谢!
【解决方案2】:

您应该做的是将gradle build tools 版本更改为与您的gradle 版本匹配的版本。根据here,您可以通过将构建工具更改为低于1.0.0 来将gradle 设置为2.14.1

buildscript {

    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.0.0'// For gradle 2.2.1 - 2.3

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

注意:如果您继续检查上述链接,您会看到 越高越好 for gradle。

【讨论】:

    【解决方案3】:

    对我来说,Android Studio > File > Invalidate Caches / Restart 成功了。

    【讨论】:

      【解决方案4】:

      我在升级到 Android Studio 2.3.1 时遇到了同样的问题。 Gradle 3.3 有一些奇怪的地方(它因“java.lang.NullPointerException: null value in entry:destinationDir=null at com.google.common.collect.CollectPreconditions.checkEntryNotNull(CollectPreconditions.java:33)”而失败)。
      好消息:似乎当前最新版本 (3.5) 可以正常工作。

      转到文件|项目结构|项目,并使用以下版本:
      Gradle 版本=3.5
      Android 插件版本=2.3.1

      【讨论】:

        【解决方案5】:

        我将 Android Studio 版本更新为 3.3 Canary 4,然后更新 gradle 插件,项目停止工作。

        我不知道如何将我的AS恢复到以前的状态,晚了gradle插件。

        但只要使用这个命令,项目现在就可以工作了,对我来说:gradlew clean assemble -stacktrace,在 AS 的终端选项卡中。

        【讨论】:

          猜你喜欢
          • 2021-02-08
          • 2018-05-26
          • 1970-01-01
          • 2017-07-02
          • 1970-01-01
          • 1970-01-01
          • 2011-07-24
          • 2017-05-13
          • 2018-01-22
          相关资源
          最近更新 更多