Android Studio无法初始化org.codehaus.groovy.runtime.InvokerHelper类。

回答 26 浏览 23.7万 2016-01-25

我是Android Studio的新手。在设置之后,当我试图导入一个应用程序时,我得到了一个错误,即gradle无法构建。

错误:无法初始化org.codehaus.groovy.runtime.InvokerHelper类。

我检查了我的Java的classpath设置是正常的。我正在运行Windows操作系统。有谁知道这个错误的来源吗?

sm_ 提问于2016-01-25
你是否检查了你的 "JAVA_HOME "变量?Paul 2016-03-09
是的,一切都很好。sm_ 2016-03-25
26 个回答
#1楼
得票数 343

请按照下面的方法进行修改,以解决这个错误。

安装Java SDK版本:14或更高。

JDK下载链接。https://www.oracle.com/java/technologies/javase-jdk14-downloads.html

gradle-wrapper.properties请使用等级版本6.3或以上。

例如:distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-all.zip

Patel Pinkal 提问于2020-03-25
将Gradle从6.0.1-all升级到6.3-all解决了Mac OS Catalina上的问题,谢谢。顺便说一下,React-native构建。Bruno de Oliveira 2020-04-30
我使用的是Java 14.与Gradle 6.4,但对我来说问题仍然存在。Riley Fitzpatrick 2020-05-20
最好的答案,为什么这不包括在ReactNative的启动程序中。Jeaf Gilbert 2020-05-27
这对我来说是有效的 "distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-all.zip"Maher Abuthraa 2020-06-12
谢谢,这对我很有帮助!为什么会出现这种情况? 我可以使用较低的gradle版本(也许也可以使用较低的java版本),但仍然可以正常工作吗?Chagai Friedlander 2020-06-18
#2楼
得票数 179
  1. 这是因为gradle的版本问题。

  2. 前往。gradle/wrapper/gradle-wrapper.properties.

  3. 通过这种方式改变一个版本的课程。

distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-all.zip

控制台的输出结果。

Welcome to Gradle 6.3!

Here are the highlights of this release:
 - Java 14 support
 - Improved error messages for unexpected failures

For more details see https://docs.gradle.org/6.3/release-notes.html

Starting a Gradle Daemon (subsequent builds will be faster)
Josileudo Rodrigues 提问于2020-05-26
choogoor 修改于2020-11-18
谢谢!这对我来说是可行的,因为我是在一个 react native 项目和 JAVA 14 / Open JDK!locropulenton 2020-09-18
我在java version "15" 2020-09-15上,这在MacOS Catalina上对我来说是有效的。Mahad Ahmed 2020-09-24
谢谢你,这很有帮助。不知道为什么这还没有被选为公认的答案。dilantha111 2020-10-10
如果你进入URL https://services.gradle.org/distributions/ 这将列出版本,然后用相关的链接编辑你的gladle-wrapper.properties文件,并点击retryRich S 2020-11-17
这对我来说是最理想的解决方案,甚至我的gradle在6.2版本上也不工作,只是切换到6.3版本就开始工作了。Edson Filho 2020-11-20
#3楼
得票数 39

首先看这个,然后尝试重新安装--https://youtu.be/trHinrIm6DM

之后,如果你得到 "无法初始化org.codehaus.groovy.runtime.InvokerHelper "类,那么你就会得到 "无法初始化"。

1.安装Java SDK 14,并更新env路径。

2."[Your RN or Flutter Project Folder]\android\gradle\wrapper\gradle-wrapper.properties "这个文件编辑为...(升级gradle版本)。

#Fri Jun 23 08:50:38 CEST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-all.zip

3.在cmd路径下运行gradlew "[你的RN或Flutter项目文件夹]/android/"。

4.它需要时间,如果显示 "BUILD SUCCESSFUL "后,你可以在你的项目文件夹中 "flutter run"。

是的,这就是工作👍

ThamaBoy 提问于2020-03-30
ThamaBoy 修改于2020-03-30
非常感谢,我在其他地方找不到解决方法。Fathi Osama 2020-05-01
我是react native的初学者,在运行安卓设备的过程中,我抓耳挠腮了很久!!!你是个了不起的人!!!你拯救了我的时间,感谢你用这种干净的信息帮助别人!!!。你是个了不起的人!!你拯救了我的时间,并感谢你有一个伟大的态度来帮助别人,像这样干净的信息!!。Abhimanyu Rathore 2020-05-13
命令应该是./gradlew,而不是gradlew。 其他的工作都很正常。Michael Ashefor 2020-07-15
旧的项目如何呢?Mohammad 2020-08-16
#4楼
得票数 26

对我有帮助的是(MacBook)。

  • 首先进入文件 -> 无效缓存/重启 -> 无效和重启
  • 然后检查 JAVA_HOME 环境变量的值,通过调用echo $JAVA_HOME(它应该等于 "/Applications/Android Studio.app/Contents/jre/jdk/Contents/家”
  • 如果不是,则通过调用export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home"更改其值
jakub-adamczewski 提问于2020-08-21
这对我来说实际上是有效的,不需要更新包装器的版本,我在我的macOS上做了一个新的安装,安装了很多东西,这可能改变了JAVA_HOME,导致了这个问题,非常感谢。Ahmed Elshaer 2020-09-26
这对我来说很有效。但它在每次开机时都会被重置。我怎样才能使这一变化永久化?sudonitin 2020-10-25
这救了我的命Pradap Pandian 2020-11-15
嗨,@sudonitin,查看那里,看看如何永久保存环境变量。medium.com/@youngstone89/…jakub-adamczewski 2020-11-17
这是很重要的,因为如果你有Android Studio,你就不必再去安装Java了。也请看 stackoverflow.com/a/48957460 关于shell配置,可以自动设置一些东西。dragon788 2021-03-05
#5楼 已采纳
得票数 10

由于 Jdk 版本较低,我遇到了这个问题。 之前我安装了 Jdk 1.7Android Studio 1.5.1,我遇到了这个问题。 如果你安装Android Studio 1.5.1或以上需要JDK 1.8

因此,安装JDK 1.8就解决了这个问题。

sm_ 提问于2016-04-14
这是不足够的charitha amarasinghe 2022-08-26
#6楼
得票数 10

我使用的是Pop OS 20.04,我的笔记本上安装了Java 8、11和14版本。

当14版是标准版时,这个错误就发生在我身上。

当我转而使用11版作为默认版本时,错误不再发生了。

sudo update-alternatives --config java
Deyve Machado 提问于2020-05-06
切换到Java 8对我有用(我没有安装11)。谢谢!Spikatrix 2020-07-14
换了11个版本,对我来说是有效的(pop-os)。dılo sürücü 2021-02-09
#7楼
得票数 8

在gradle-wrapper.properties文件中,将Gradle更新到6.3后,在Mac OS Catalina上解决了问题。

分布式Url=https://services.gradle.org/distributions/gradle-6.3-bin.zip

bongtoi 提问于2020-10-22
请问我在哪里可以得到gradle-wrapper.properties文件?Soumya Boral 2020-11-05
你可以在 "YOUR_PROJECT/gradle/wrapper/gradle-wrapper.properties "路径下得到它。bongtoi 2020-11-06
对于react native,它略有不同。YOUR_PROJECT/android/gradle/wrapper/gradle-wrapper.propertiesMike S. 2021-04-08
#8楼
得票数 6
  1. 转到\android\gradle\wrapper\gradle-wrapper.properties
  2. 更新distributionUrl中Gradle的安装发行版(all.zip)。以Gradle 6.8版本为例:

分布式Url=https://services.gradle.org/distributions/gradle-6.8-all.zip

Pasindu Jayanath 提问于2021-01-25
#9楼
得票数 5

我在构建Flutter应用程序时遇到了这个问题。 这个错误是由于你在Android项目中使用的gradle版本造成的。 请按照以下步骤进行操作。

distributionUrl = https://services.gradle.org/distributions/gradle-6.3-all.zip

现在保存文件(Ctrl + S),转到控制台并运行命令

淹没式的运行

这需要一些时间,但你所面临的问题会得到解决的。

Deep Patel 提问于2020-10-18
欢迎来到Stackoverflow,您的贡献非常大。VtoCorleone 2020-10-20
超级!在Flutter中运作得很好!Shariful Islam Mubin 2020-10-24
#10楼
得票数 4

那么,你是在2022年,而改变分发的URL并不奏效?

是的,React Native 太痛苦了。确保您已遵循 React Native 官方指南,然后检查 Java 版本:

java -version

检查 Gradle 版本的兼容性矩阵。对版本的分发URL进行相应的修改,从。

distributionUrl=https\://services.gradle.org/distributions/gradle-X.X-all.zip

distributionUrl=https\://services.gradle.org/distributions/gradle-Y.Y-all.zip

其中Y.Y是适合你的Java版本。

现在,检查一下$JAVA_HOME是否设置好了:

echo $JAVA_HOME

该死,是空的!

是的,这个环境变量是必需的,在互联网上你会看到导出这个路径的例子,例如在MacOS。

export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home"

要小心,这并不总是正确的路径。使用cd命令来检查它的导航。对我来说,路径是:

export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/Contents/Home"   

找出差异。这可能在任何地方,因此请仔细检查,因为这是允许您使用 yarn example android 运行项目的最后一步

测试在:macOS Bug Sur,11.4版本。英特尔酷睿i5。祝你在M1上好运。

PS:我讨厌React Native所需的配置。

Sergio Gutiérrez 提问于2022-01-26
这是你的。谢谢你的救命之恩 :)Srijwal R 2022-09-05
#11楼
得票数 4

在我的案例中,问题在于我的Gradle版本与JDK 14不兼容,但尽管在项目结构对话框中选择了JDK 8。

必须在gradle.propperties中为Gradle单独设置JDK原点:

org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_251.jdk/Contents/Home
txqe 提问于2020-06-29
informatik01 修改于2022-04-21
#12楼
得票数 2

我的问题在于全局安装的 Gradle 版本与 React Native 所需的版本之间存在差异。要修复它,我必须从 当前更新文件夹 android/gradle/wrapper 6.5 来自 GH 的 RN 版本.

Vladyslav Zavalykhatko 提问于2020-08-18
#13楼
得票数 2

我仅仅通过编辑gradle-wrapper.properties文件就解决了这个问题。

你必须进入项目文件夹,然后/android/grandle/wrapper/gradle-wrapper.properties.在DistributionUrl中,改为https \: //services.gradle.org/distributions/gradle-6.4.1-all.zip.

Samuel Zottis Dal Magro 提问于2020-11-13
Elletlar 修改于2020-11-13
#14楼
得票数 2

如果你使用jdk 16降级到14,gradle-wrapper.properties使用6.3,别忘了把build.gradle中的build gradle升级到4以上。

Chriskaa developer 提问于2021-04-25
#15楼
得票数 2

当我从github上克隆一个项目时,我的系统也出现了同样的错误。 我在我的系统上创建的项目没有任何错误。 所以,如果你也有类似的情况,这可能会帮助你 1-去这个路径

project-name/android/gradle/wrapper/gradle-wrapper.properties

2-将里面的东西都换成这个样子

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Rahul Dhiman 提问于2021-04-27
Dharman 修改于2021-04-27
#16楼
得票数 1

当你在 gradle-wrapper.properties 文件中升级到最新版本的 gradle 即distributionUrl=https\://services.gradle.org/distributions/gradle-6.6.1-bin.zip 请不要忘记更改 build.gradle 文件中的 gradle 版本

wrapper {
    gradleVersion = '6.6.1'
}
Misanty 提问于2020-08-29
#17楼
得票数 1

当我用VS Code & Flutter打开一个新项目时,我得到了这个错误。我通过编辑gradle.build和gradle-wrapper.properties文件解决了这个问题。

像这样编辑android>build.gradle:

依赖关系 { classpath 'com.android.tools.build:gradle:3.5.0' classpath 'com.google.gms: google-services:4.3.3' //添加这一行 classpath "org.jetbrains.kotlin: kotlin-gradle-plugin:$ kotlin_version" }

编辑 gradle-wrapper.properties

分布式Url=https://services.gradle.org/distributions/gradle-6.3-all.zip

Ali Murat 提问于2020-11-11
这与@josileudo提供的答案是一样的。Mike S. 2021-04-08
#18楼
得票数 1

我也遇到了同样的问题,而且看起来这个问题是由于项目目录中的gradle版本所造成的。

  • 这是我的jdk的版本。
openjdk version "15-ea" 2020-09-15
OpenJDK Runtime Environment (build 15-ea+32-Ubuntu-220.04)
OpenJDK 64-Bit Server VM (build 15-ea+32-Ubuntu-220.04, mixed mode, sharing)
  • 请检查gradle是否已经安装。这是我的gradle的版本。
------------------------------------------------------------
Gradle 6.8
------------------------------------------------------------

Build time:   2021-01-08 16:38:46 UTC
Revision:     b7e82460c5373e194fb478a998c4fcfe7da53a7e

Kotlin:       1.4.20
Groovy:       2.5.12
Ant:          Apache Ant(TM) version 1.10.9 compiled on September 27 2020
JVM:          15-ea (Private Build 15-ea+32-Ubuntu-220.04)
OS:           Linux 5.4.0-65-generic amd64
  • 然后在你的项目文件夹中打开gradle-wrapper.properties文件,在文件夹中。project name/android/gradle/wrapper/gradle-wrapper.properties

  • 改变gradle的版本。这里我把gradle的版本改为6.5

视频版本可以在这里看到。https://www.youtube.com/watch?v=mcclcscUpV0

Fuad Rifki 提问于2021-02-23
Fuad Rifki 修改于2021-02-23
#19楼
得票数 1

我在构建Flutter项目时遇到了同样的问题,我编辑了这个文件gradle-wrapper.properties
位置:android -> grade\wrapper ->gradle-wrapper.properties

从这一点来看。

distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip

对这一点。

distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip

但是没有解决,我做了flutter doctor,在android工具链中发现了一些错误。我打开 android studio 并在 SDK manager 中安装了“Android SDK Command-line tools”。 https://stackoverflow.com/a/69604498/13577765

并且得到了解决。

Sanjay TM 提问于2021-10-17
Sanjay TM 修改于2021-10-17
#20楼
得票数 1

这个解决方案是针对M1 Mac用户的

键入/usr/libexec/java_home -V 查找您的本地Java 版本。如果不存在,请在此处安装最新的 ARM Java 版本 通过键入设置 Java_Home 路径(在我的情况下为 jdk-17.0.1.jdk)

/usr/libexec/java_home /Library/Java/JavaVirtualMachines/jdk-17.0.1.jdk/Contents/Home

在终端键入所有这些内容

cd /Applications/Android\ Studio.app/Contents/jre ln -s ../jre jdk ln -s "/Library/Internet Plug-Ins/JavaAppletPlugin.plugin" jdk

最后运行 flutter doctor -v 来查看所有的细节变化。

Loc Le Xuan 提问于2022-01-07
#21楼
得票数 0

gradle-wrapper.properties请使用6.3或以上版本的gradle。

分布式Url=https://services.gradle.org/distributions/gradle-6.3-all.zip

../android/gradle/wrapper/gradle-wrapper.properties

Vivek 提问于2020-05-16
#22楼
得票数 0

对我来说,解决方案是将gradle版本从android项目结构中升级到6.3(我的电脑上已经安装了java 14.0.1)。

3.dayma 提问于2020-08-16
#23楼
得票数 0

(解决方案)我在android studio中尝试了我的第一个flutter应用程序,我得到了同样的错误" 无法初始化org.codehaus.groovy.runtime.InvokerHelper".Inc.的类。

打开build.gradle并更新依赖性。

    classpath 'com.android.tools.build:gradle:4.0.1'
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

或者只需在com.android.tools.build:grandle:(your-version)上悬停一下即可。

Rajesh Jat 提问于2020-09-17
#24楼
得票数 0

当我尝试"react-native run-android"时,我收到了错误"无法初始化org.codehaus.groovy.runtime.InvokerHelper"+"安装应用程序失败。确保你已经设置了Android开发环境"....。

通过更新Android Studio中的gradle解决了这个问题。当我在Android Studio中打开我的项目时,它显示了一条要求更新Gradle的信息,而我只是点击了一下。

Philippe Rocha 提问于2020-12-27
我也这么做了。在我的情况下,它并没有解决这个问题。Mike S. 2021-04-08
#25楼
得票数 0

仅仅改变gradle-wrapper.properties中的distributionUrl是不够的,你还需要在项目结构中改变gradle版本。

  1. 进入gradle-wrapper.properties,并进行修改。

分布式Url=https://services.gradle.org/distributions/gradle-6.8-all.zip

  1. 进入Android studio ->文件 ->项目结构

将gradle版本改为6.8或任何你选择的与你的jdk兼容的版本。

M.Mark 提问于2021-02-19
#26楼
得票数 0

解决这个问题。

distributionUrl=https\://services.gradle.org/distributions/gradle-6.0.1-all.zip

而我把它改成了。

distributionUrl=https\://services.gradle.org/distributions/gradle-7.0-all.zip
mohammad mirshahi 提问于2021-09-30
Muhammad Dyas Yaskur 修改于2021-09-30