266 votes

Cause : buildOutput.apkData ne doit pas être nul

Mon application Android utilisant Kotlin lève cette exception lorsque j'essaie de lancer 'app' dans l'émulateur de mon téléphone portable. Lorsque je construis mon projet, il fonctionne bien, sans aucune erreur.

J'utilise :

  • SDK 28 (Android 9.0 (Pie))
  • Gradle 5.1.1
  • Plugin Gradle 3.5.0-alpha03
  • Kotlin 1.3.10
  • Java 1.8.0_151
  • OSX 10.13.2

    org.gradle.internal.exceptions.LocationAwareException: buildOutput.apkData must not be null
        at org.gradle.initialization.exception.DefaultExceptionAnalyser.transform(DefaultExceptionAnalyser.java:99)
        at org.gradle.initialization.exception.DefaultExceptionAnalyser.collectFailures(DefaultExceptionAnalyser.java:65)
        at org.gradle.initialization.exception.MultipleBuildFailuresExceptionAnalyser.transform(MultipleBuildFailuresExceptionAnalyser.java:39)
        at org.gradle.initialization.exception.StackTraceSanitizingExceptionAnalyser.transform(StackTraceSanitizingExceptionAnalyser.java:29)
        at org.gradle.initialization.DefaultGradleLauncher.finishBuild(DefaultGradleLauncher.java:194)
        at org.gradle.initialization.DefaultGradleLauncher.finishBuild(DefaultGradleLauncher.java:141)
        ...
    Caused by: java.lang.IllegalStateException: buildOutput.apkData must not be null
        at com.android.build.gradle.internal.ide.EarlySyncBuildOutput$Companion$load$2.invoke(EarlySyncBuildOutput.kt:103)
        at com.android.build.gradle.internal.ide.EarlySyncBuildOutput$Companion$load$2.invoke(EarlySyncBuildOutput.kt:67)
        at kotlin.sequences.TransformingSequence$iterator$1.next(Sequences.kt:174)
        at kotlin.sequences.SequencesKt___SequencesKt.toCollection(_Sequences.kt:691)
        at kotlin.sequences.SequencesKt___SequencesKt.toMutableList(_Sequences.kt:721)
        at kotlin.sequences.SequencesKt___SequencesKt.toList(_Sequences.kt:712)
        ...

3 votes

3 votes

J'ai le même problème après avoir mis à jour Android Studio en 3.4.

2 votes

Vérifiez la réponse de Lemberg qui fonctionne pour moi, j'ai été confronté à ce problème aujourd'hui.

4voto

Abhishek Garg Points 126

Ça marche pour moi :

  1. supprimer manuellement le dossier de construction de votre projet.

  2. dans le terminal d'Android studio tapez cette commande

si l'utilisateur de Windows

gradlew clean build

si utilisateur linux

./gradlew clean build

4voto

Suresh Maidaragi Points 336

Ce problème se produit généralement lorsque vous exécutez plusieurs fenêtres Android Studio avec différents projets.

La solution est

  • choisir le projet puis supprimer les dossiers .gradle et build
  • que de nettoyer et reconstruire le projet.

Veuillez consulter la capture d'écran ci-jointe

please ref screen shot attached

4voto

sana ebadi Points 740

Il suffit de changer le Emplacement de l'Apk release/debug .

EX :

/home/sanaebadi/Desktop

après le changement :

/home/sanaebadi/apk

3voto

3dmg Points 164

La solution pour moi a été de supprimer tous les fichiers et dossiers du dossier de sortie de l'apk. J'ai eu ce problème lors de la création d'un apk signé pour une saveur de "production" et les output.json dans le dossier de sortie "feature" cause le problème -> Android Studio 3.6 Canary 7 m'a montré le message d'erreur correct. Il fonctionne également maintenant pour AS 3.5 stable avec le plugin Gradle 3.5.0.

3voto

pool Points 31

Toutes les solutions n'ont pas fonctionné avec moi
Dans mon cas, la mise à jour d'AndroidStudio 3.4+ vers 3.5.
Et finalement je l'ai résolu en modifiant le dossier de destination en "app/build/outputs/apk".
détail de la photo

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X