web-dev-qa-db-fra.com

La synchronisation Gradle a échoué: cause: erreur lors de l'ouverture du fichier Zip du cache de dépendance corrompu.

Salut les gars, je suis nouveau sur Android Studio et je viens tout juste d’apprendre à travers ce cours en ligne 'Développement d’applications Android' par Udacity..Le problème est que le projet que je développe reste conforme au cours " Sunshine " échoue pour synchroniser correctement ...

C'est le message affiché dans les journaux des événements.

Echec de la synchronisation du dégradé: cause: erreur lors de l'ouverture du fichier Zip

Description complète des logs:

**2017-03-04 08:14:32,358 [  61978]   WARN - nal.AbstractExternalSystemTask - Cause: error in opening Zip file 
com.intellij.openapi.externalSystem.model.ExternalSystemException: Cause: **error in opening Zip file**
    at com.Android.tools.idea.gradle.project.sync.idea.ProjectImportErrorHandler.getUserFriendlyError(ProjectImportErrorHandler.Java:86)
    at com.Android.tools.idea.gradle.project.sync.idea.AndroidGradleProjectResolver.getUserFriendlyError(AndroidGradleProjectResolver.Java:361)
    at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver$ProjectConnectionDataNodeFunction.fun(GradleProjectResolver.Java:769)
    at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver$ProjectConnectionDataNodeFunction.fun(GradleProjectResolver.Java:749)
    at org.jetbrains.plugins.gradle.service.execution.GradleExecutionHelper.execute(GradleExecutionHelper.Java:227)
    at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver.resolveProjectInfo(GradleProjectResolver.Java:112)
    at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver.resolveProjectInfo(GradleProjectResolver.Java:72)
    at com.intellij.openapi.externalSystem.service.remote.RemoteExternalSystemProjectResolverImpl.lambda$resolveProjectInfo$0(RemoteExternalSystemProjectResolverImpl.Java:37)
    at com.intellij.openapi.externalSystem.service.remote.AbstractRemoteExternalSystemService.execute(AbstractRemoteExternalSystemService.Java:59)
    at com.intellij.openapi.externalSystem.service.remote.RemoteExternalSystemProjectResolverImpl.resolveProjectInfo(RemoteExternalSystemProjectResolverImpl.Java:37)
    at com.intellij.openapi.externalSystem.service.remote.wrapper.ExternalSystemProjectResolverWrapper.resolveProjectInfo(ExternalSystemProjectResolverWrapper.Java:49)
    at com.intellij.openapi.externalSystem.service.internal.ExternalSystemResolveProjectTask.doExecute(ExternalSystemResolveProjectTask.Java:51)
    at com.intellij.openapi.externalSystem.service.internal.AbstractExternalSystemTask.execute(AbstractExternalSystemTask.Java:138)
    at com.intellij.openapi.externalSystem.service.internal.AbstractExternalSystemTask.execute(AbstractExternalSystemTask.Java:124)
    at com.intellij.openapi.externalSystem.util.ExternalSystemUtil$3.execute(ExternalSystemUtil.Java:415)
    at com.intellij.openapi.externalSystem.util.ExternalSystemUtil$5.run(ExternalSystemUtil.Java:494)
    at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.Java:635)
    at com.intellij.openapi.progress.impl.CoreProgressManager$3.run(CoreProgressManager.Java:170)
    at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.Java:494)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.Java:443)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.Java:54)
    at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.Java:155)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl$1.run(ProgressManagerImpl.Java:128)
    at com.intellij.openapi.application.impl.ApplicationImpl$2.run(ApplicationImpl.Java:307)
    at Java.util.concurrent.Executors$RunnableAdapter.call(Executors.Java:511)
    at Java.util.concurrent.FutureTask.run(FutureTask.Java:266)
    at Java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.Java:1142)
    at Java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.Java:617)
    at Java.lang.Thread.run(Thread.Java:745)
Caused by: Java.util.Zip.ZipException: **error in opening Zip file**
    at Java.util.Zip.ZipFile.open(Native Method)
    at Java.util.Zip.ZipFile.<init>(ZipFile.Java:219)
    at Java.util.Zip.ZipFile.<init>(ZipFile.Java:149)
    at Java.util.Zip.ZipFile.<init>(ZipFile.Java:163)
    at org.gradle.wrapper.Install.unzip(Install.Java:214)
    at org.gradle.wrapper.Install.access$600(Install.Java:27)
    at org.gradle.wrapper.Install$1.call(Install.Java:74)
    at org.gradle.wrapper.Install$1.call(Install.Java:48)
    at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.Java:69)
    at org.gradle.wrapper.Install.createDist(Install.Java:48)
    at org.gradle.tooling.internal.consumer.DistributionFactory$ZippedDistribution$1.call(DistributionFactory.Java:139)
    at org.gradle.tooling.internal.consumer.DistributionFactory$ZippedDistribution$1.call(DistributionFactory.Java:133)
    ... 4 more**

Quelqu'un peut-il m'indiquer dans la bonne direction sur la façon de résoudre ce problème?

15

Supprimez simplement le dossier Gradle de votre répertoire personnel! c'est à dire

~/user/.gradle/wrapper/dists/gradle-name

gradle-name est la distribution que vous devez supprimer. Ouvrez ensuite le studio Android et ouvrez le projet pour synchroniser à nouveau le gradé.

39
Ahmad A.A

Causée par: Java.util.Zip.ZipException: erreur lors de l'ouverture du fichier Zip

Cela signifie qu'un fichier téléchargé par Gradle a été corrompu pour une raison ou une autre. Il peut s’agir du téléchargement de Gradle lui-même (comme le fait le wrapper) ou de toute dépendance que Gradle a téléchargée pour exécuter votre construction.

Gradle n'essaie pas de détecter ou de résoudre le problème, vous devez donc le résoudre manuellement. La solution consiste souvent à purger les caches de téléchargement de Gradle et à lui laisser de nouvelles copies de ce dont il a besoin.


Pour ce faire, supprimez les répertoires .gradle de votre répertoire home et du répertoire racine de votre projet et essayez de reconstruire à nouveau.

Dans votre cas, le répertoire personnel est 

C:\Users\User\.gradle
13
Aryan

Ce qui suit est ma solution.

  1. Téléchargez manuellement le fichier spécifié par distributionUrl, défini dans le fichier $ PROJECT/gradle/wrapper/gradle-wrapper.properties. Dans mon cas, la ligne ressemble à:

    distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-bin.Zip
    
  2. Copiez le fichier téléchargé dans le chemin spécifié dans le fichier gradle-wrapper.properties susmentionné. Dans mon cas, le gradle-2.14.1-bin.Zip devrait être placé dans le dossier: 

    ~/.gradle/wrapper/dists/gradle-2.14.1-bin/2r579t5wehc7ew5kc8vfqezww
    

    Depuis que gradle a essayé de télécharger gradle-2.14.1-bin.Zip mais a échoué, il y a un gradé cassé-2.14.1-bin.Zip dans ce dossier. Il suffit de remplacer le fichier brisé par le fichier téléchargé manuellement.

  3. Retournez dans le studio Android et cliquez sur le message d'erreur lié à un lien hypertexte. Il devrait procéder à la synchronisation.

1
jhuai

J'avais créé un nouveau projet lorsque cette erreur s'est produite . Dans le terminal:

cd /Users/<user>/.gradle/wrapper/dists
ls

Ici, je pouvais voir que le studio Android essayait de télécharger gradle-4.6-all alors que j'avais déjà gradle-4.10-all (cela fonctionnait pour moi pour les projets précédents) . J'ai supprimé le dossier rm -r gradle-4.6-all.

Dans mon fichier gradle-wrapper.properties, j'ai remplacé l'URL de distribution par distributionUrl=https\://services.gradle.org/distributions/gradle-4.10-all.Zip Synchronisé mon projet et cela a fonctionné. 

1
DISHA

Téléchargez gradle dernière version à partir de ce lien https://services.gradle.org/distributions/ Extrayez les fichiers de votre répertoire gradle. déploiement change l'emplacement du dégradé par défaut en dégradé local que vous avez téléchargé cliquez sur ok et reconstruisez le projet qui corrigera 

0
Super apps

le problème est qu’Android studio/gradle n’a pas l’autorisation d’accéder aux fichiers du dossier de votre projet ..__ pour le corriger, accédez à votre dossier de projet> propriétés> sécurité> modifier et sélectionnez le contrôle total pour votre utilisateur actuel ou pour tous d'eux  editing users permissions

0
ironmann350