Android studio - 无法完成gradle执行 - 打开zip文件时出错

时间:2014-05-23 11:31:41

标签: java android gradle android-studio android-gradle

我是android开发和android studio IDE的新手。

我已经从bitbucket检出了一个项目,当我尝试编译它时,我收到以下错误:

  

无法完成Gradle Execution

     

原因:   打开zip文件时出错。

我的gradle-wrapper.properties如下:

  

distributionBase = GRADLE_USER_HOME
  distributionPath =包装/ dists中
  zipStoreBase = GRADLE_USER_HOME
  zipStorePath =包装/ dists中
  distributionUrl = HTTP \://services.gradle.org/distributions/gradle-1.11-all.zip

我无法从中获取太多信息,但完整的日志声明:

  

2014-05-23 14:06:28,950 [32077]警告 -   nal.AbstractExternalSystemTask - 原因:打开zip文件时出错   com.intellij.openapi.externalSystem.model.ExternalSystemException:   原因:打开zip文件时出错   org.jetbrains.plugins.gradle.service.project.GradleExecutionHelper.execute(GradleExecutionHelper.java:206)     在   org.jetbrains.plugins.gradle.service.project.GradleProjectResolver.resolveProjectInfo(GradleProjectResolver.java:116)     在   org.jetbrains.plugins.gradle.service.project.GradleProjectResolver.resolveProjectInfo(GradleProjectResolver.java:64)     在   com.intellij.openapi.externalSystem.service.remote.RemoteExternalSystemProjectResolverImpl $ 1.produce(RemoteExternalSystemProjectResolverImpl.java:41)     在   com.intellij.openapi.externalSystem.service.remote.RemoteExternalSystemProjectResolverImpl $ 1.produce(RemoteExternalSystemProjectResolverImpl.java:37)     在   com.intellij.openapi.externalSystem.service.remote.AbstractRemoteExternalSystemService.execute(AbstractRemoteExternalSystemService.java:59)     在   com.intellij.openapi.externalSystem.service.remote.RemoteExternalSystemProjectResolverImpl.resolveProjectInfo(RemoteExternalSystemProjectResolverImpl.java:37)     在   com.intellij.openapi.externalSystem.service.remote.wrapper.ExternalSystemProjectResolverWrapper.resolveProjectInfo(ExternalSystemProjectResolverWrapper.java:49)     在   com.intellij.openapi.externalSystem.service.internal.ExternalSystemResolveProjectTask.doExecute(ExternalSystemResolveProjectTask.java:48)     在   com.intellij.openapi.externalSystem.service.internal.AbstractExternalSystemTask.execute(AbstractExternalSystemTask.java:137)     在   com.intellij.openapi.externalSystem.service.internal.AbstractExternalSystemTask.execute(AbstractExternalSystemTask.java:123)     在   com.intellij.openapi.externalSystem.util.ExternalSystemUtil $ 3.execute(ExternalSystemUtil.java:467)     在   com.intellij.openapi.externalSystem.util.ExternalSystemUtil $ 4 $ 2.run(ExternalSystemUtil.java:546)     在   com.intellij.openapi.progress.impl.ProgressManagerImpl $ TaskRunnable.run(ProgressManagerImpl.java:464)     在   com.intellij.openapi.progress.impl.ProgressManagerImpl $ 2.run(ProgressManagerImpl.java:178)     在   com.intellij.openapi.progress.ProgressManager.executeProcessUnderProgress(ProgressManager.java:209)     在   com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:212)     在   com.intellij.openapi.progress.impl.ProgressManagerImpl.runProcess(ProgressManagerImpl.java:171)     在   com.intellij.openapi.progress.impl.ProgressManagerImpl $ 8.run(ProgressManagerImpl.java:373)     在   com.intellij.openapi.application.impl.ApplicationImpl $ 8.run(ApplicationImpl.java:419)     在   java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:511)     在java.util.concurrent.FutureTask.run(FutureTask.java:266)at   java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)     在   java.util.concurrent.ThreadPoolExecutor中的$ Worker.run(ThreadPoolExecutor.java:617)     在java.lang.Thread.run(Thread.java:745)at   com.intellij.openapi.application.impl.ApplicationImpl $ 1 $ 1.run(ApplicationImpl.java:149)

     

2014-05-23 14:06:28,950 [32077]警告 -   .project.GradleProjectImporter - 2014-05-23 14:06:28,951 [32078]
  INFO - .project.GradleProjectImporter - 原因:打开zip时出错   文件

我正在使用Android studio 0.5.2。

有人能指出我如何解决这个问题的正确方向吗?

15 个答案:

答案 0 :(得分:65)

“打开zip文件时出错”往往意味着Gradle已下载的文件以某种方式损坏 - 这可能是Gradle本身的下载(包装器所做的),或Gradle已下载到的依赖项运行你的构建。

Gradle不会尝试检测或解决问题,因此您需要手动修复它。解决方案通常是清除Gradle的下载缓存,让它获得所需内容的新副本。为此,请删除主目录和项目根目录中的.gradle目录,然后重新构建。

答案 1 :(得分:22)

如果您的互联网计划有限,请使用以下方法。

Step1 :关闭android studio

Step2 转到C:\ Users \ Khurshid \ .gradle \ wrapper \ dists \ gradle-1.12-all \ 2apkk7d25miauqf1pdjp1bm0uo (如果要配置gradle 1.12 )

Step3 :尝试双击打开gradle-1.12-all.zip。如果它给出错误消息,则删除zip文件。

step4 :转到https://services.gradle.org/distributions并下载gradle-1.12-all.zip(约54mb)并将其复制到之前已删除zip文件的文件夹中。

step5 :打开android studio并转到file->设置select' gradle'并点击“使用本地gradle分发”#39;并设置'gradle home'到' C:\ Users \ Khurshid \ .gradle \ wrapper \ dists \ gradle-1.12-all \ 2apkk7d25miauqf1pdjp1bm0uo \ gradle-1.12-all.zip '然后单击确定。

step6 :它会通过互联网下载一些文件。如果下载没有自动启动,则重启android studio。

step7 :请耐心等待,让它下载一些重要的东西,然后一切都应该正常工作。此方法可帮助您保存互联网数据。下载整个gradle目录将消耗双倍的数据。

谢谢

答案 2 :(得分:4)

在将现有项目导入Android Studio时,我也遇到了类似的问题,这可能是由于两个不同的Android Studio平台之间的gradle版本不匹配所致。

解决方案(在Mac OS上):

  1. 关闭Android Studio。
  2. 用户/ .gradle /
  3. 中找到.gradle文件夹
  4. 删除文件夹&清除垃圾桶。
  5. 重新启动Android Studio&同步您的项目。它将重新下载gradle插件&配置。

答案 3 :(得分:2)

对我来说,这个错误的解决方法是将../gradle/wraper/gradle-wrapper.properties中的gradle包装器版本更改为另一个/更新的版本..我用过:

  

distributionUrl = HTTPS://services.gradle.org/distributions/gradle-2.14.1-all.zip

然后致电:

  

./ gradlew --refresh-dependencies

这告诉包装器指向新版本并重新下载所有必需的依赖项。我怀疑我的错误是由于第一次构建相关项目时下载中断造成的。

答案 4 :(得分:2)

这个问题的起因之一(自2019年末开始)是decommissioning of HTTP services by Gradle-我看到您在HTTP中使用distributionUrl协议。这意味着,如果您的[PROJECT_PATH]/gradle/wrapper/gradle-wrapper.properties文件具有以下条目:

distributionUrl=http\://services.gradle.org/distributions/gradle-{version}.zip

...然后,此条目将尝试从不再提供服务的服务(基于ZIP的服务中检索http文件,并且将静默返回一个空的ZIP文件;因此,任何试图解压缩该空ZIP文件的过程都会导致错误。

要解决此问题,只需将您的[PROJECT_PATH]/gradle/wrapper/gradle-wrapper.properties文件更改为使其distributionUrl条目即可使用https

distributionUrl=https\://services.gradle.org/distributions/gradle-{version}.zip

希望这会有所帮助。

答案 5 :(得分:0)

我通过......解决了这个问题。

  • 转到设置...>摇篮
  • 选择"使用本地Gradle分发。"
  • 将其指向我的Gradle zip文件: home / kersting / .gradle / wrapper / dists / gradle-1.12-all / 6vpvhqu0efs1fqmqr2decq1v12 / gradle-1.12

如果您下载了下载Android Studio时应该具有的Gradle,那么它应该类似于您。注意,.gradle文件可能会被隐藏。我通过终端找到了它,但是" ls"没有透露它。

答案 6 :(得分:0)

我有同样的问题,发生在打开和关闭千斤顶和吉尔工具链后。我尝试删除.gradle但它没有帮助。删除项目文件夹中的构建目录可以解决问题。

在删除.gradle之前尝试此操作,因为它需要近200MB的下载量。

答案 7 :(得分:0)

我通过以下方法解决了同样的问题:

转到文件 - >设置 - >摇篮

在" Gradle VM选项中输入以下内容:"框:-XX:MaxHeapSize = 256m -Xmx256m

点击申请,Android Studio应该成功构建您的项目。

答案 8 :(得分:0)

清除 .gradle 目录没有帮助,但清除构建目录为我完成了这项工作。

答案 9 :(得分:0)

您只需编辑build.gradle文件。

您应该将类​​路径设置为最新的gradle版本

  dependencies {
    classpath 'com.android.tools.build:gradle:1.5.0'
}

并同步项目。所有错误都将消失。你可以做的是,在android studio中创建一个新项目,它将具有最新gradle的类路径,并将其粘贴到你的项目中Cause: error in opening zip file.出现此错误。

答案 10 :(得分:0)

我遇到了同样的问题而且要修复它我下载最后一个版本的gradle:

https://services.gradle.org/distributions

然后在右侧栏中打开gradle,然后选择gradle参数并将旧gradle的路径更改为新的gradle。

答案 11 :(得分:0)

删除.gradle文件夹对我有用。删除.gradle文件夹

后问题解决了

答案 12 :(得分:0)

像这样将vectorizer.vocabulary_更改为最新版本:

distributionUrl

它将下载所有必要的gradle文件以及您需要的东西。

答案 13 :(得分:-1)

在最新版本的Android Studio文件中 - >无效的缓存/重启是值得尝试的。

答案 14 :(得分:-1)

我有同样的问题

  • 转到C:\ Users \ Jesus Navas.gradle \ wrapper \ dists \ gradle-3.3-all(您的gradle版本)。

  • 删除当前的gradle版本并再次在cmd“ionic build android”中写入。

  • 但是,您的gradle会再次下载,然后它会自动解压缩,准备结帐输出.apk,

这解决了我的问题