40
votes

Android-studio 3.4.0-3.4.2 ERREUR Gradle: aucune valeur n'a été spécifiée pour la propriété 'manifestOutputDirectory'

lors de la mise à niveau vers android-studio 3.4.x / gradle build plugin 3.4.x / gradle 5.3 ... je me demande si c'est un problème avec le plugin android.

ERROR: No value has been specified for property 'manifestOutputDirectory'.

Mon script gradle n'utilise pas de variables liées au manifeste, ni n'a changé le manifeste. La version avant ma mise à jour est Android-Studio: 3.3 / Gradle pulgin: 3.3.2 / Gradle: 5.3


Première mise à jour (20190508) Méthode :Fix (temporaire)

Trouvez une méthode de correction temporaire, mais la méthode de correction de l'erreur est encore inconnue. Moyens à éviter: Je suis un système Mac OS X: Cliquez sur Android Studio-> Preperences ...-> Experimental décocher: Synchroniser uniquement la variante active.

J'ai étudié la documentation. Cette fonctionnalité peut améliorer la vitesse de compilation. Si je trouve la méthode de correction, je souhaite continuer à cocher «Synchroniser uniquement la variante active».


Deuxième mise à jour (20190518) :

L'examen de certains documents n'a pas trouvé de solution.

Mais trouvez probablement des conditions récurrentes pour votre référence.

Le processus de ce problème consiste à prendre l'initiative de démarrer l'opération de synchronisation de projet de Gradle. Par exemple, deux endroits sur la figure apparaîtront lorsque vous cliquez dessus. En cas de problème, vous devez décocher "Synchroniser uniquement la variante active". entrez la description de l'image ici

Cependant, après avoir compilé et installé avec succès, cochez "Synchroniser uniquement la variante active.", Ce problème ne réapparaîtra pas, même si vous modifiez le fichier build.gradle, la notification supérieure qui doit être synchronisée à nouveau, ne cliquez pas sur "Sync now ", utilisez directement run 'app' ou debug 'app', Android-studio effectuera automatiquement la synchronisation, puis compilera et exécutera, et ce problème ne se reproduira plus. entrez la description de l'image ici

Au début, je pensais que changer le code de build.gradle pouvait corriger ce problème. Maintenant, j'ai l'impression qu'Android-studio ou gradle-plugin a des problèmes lors de l'exécution de la synchronisation de projet. J'espère que la version suivante résoudra ce problème.


Troisième mise à jour (20190821) :

Android-studio 3.5.0 / plugin de build gradle 3.5.0 / gradle 5.4.1

La dernière version stable actuelle a résolu ce problème.

Activer "Synchroniser uniquement la variante active" est ok.


1 commentaires

Cette erreur se produit pour moi sur Android Studio 3.6 Beta 3. J'ai essayé tout ce qui est mentionné ici sans joie. Toute aide serait grandement appréciée.


9 Réponses :


8
votes

Je viens de passer à AS 3.4 et j'ai eu le même problème. Cela se produit lors du démarrage à froid de l'application. Build > Make Project fonctionne bien, tout comme la construction à partir de la ligne de commande.


1 commentaires

J'ai essayé, lorsque ce problème survient, d'essayer de nettoyer le projet, puis la compilation réussit également, mais chaque fois que vous avez besoin d'un projet propre, c'est vraiment ennuyeux. . .



51
votes

Mac OS - Cliquez sur Android Studio> Préférences> Expérimental puis vous devez décocher - Synchroniser uniquement la variante active.

Windows - Fichier> Paramètres> Expérimental, alors vous devez décocher - Synchroniser uniquement la variante active.

Décochez l'option est cochée


1 commentaires

Lol. Sur Android 3.5, cela était déjà vérifié et le fait de le décocher a résolu mon problème.



0
votes

Dans mon cas, le problème était que j'avais opté pour l'option incrémentielle

Résoudre le problème

ouvrez le fichier gradle.properties et supprimez la ligne

kapt.incremental.apt=true   //remove or comment this line


0 commentaires

14
votes

Sur une installation PC propre, j'ai essayé toutes les astuces ici et rien n'a fonctionné. J'ai remarqué qu'il y avait un message enregistré indiquant que la licence n'était pas acceptée. J'ai ouvert le gestionnaire de SDK, téléchargé des packages qui m'ont incité à accepter la licence et il a commencé à se synchroniser.


0 commentaires

0
votes

Il pourrait manquer Java JDK, vous voudrez peut-être vérifier tha


0 commentaires

7
votes

Idem avec la réponse @ user3407078.

Dans mon cas. Cela est dû aux mises à jour d' Android Studio 3.5 , et je n'ai pas installé ni accepté la licence et le contrat pour les outils de compilation et la plate-forme SDK 29 .

Checking the license for package Android SDK Build-Tools 29.0.2 in ~/Library/Android/sdk/licenses
Warning: License for package Android SDK Build-Tools 29.0.2 not accepted.
Checking the license for package Android SDK Platform 29 in ~/Library/Android/sdk/licenses
Warning: License for package Android SDK Platform 29 not accepted.

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':app'.
> No value has been specified for this provider.

Il est recommandé de mettre à jour les derniers outils et plate-forme SDK, dans ce cas, la version 29 . Même nous ne développons que la version inférieure, c'est une étape obligatoire pour travailler sur votre Android Studio.

ÉDITÉ:

  1. Dans un cas rare, vous voudrez peut-être également désactiver la fonction Gradle ici thx @ waqas-khalid-obeidy
  2. Ou si vous utilisez une tâche de ligne de commande gradlew , veuillez naviguer ici pour une explication complète. merci @ amir-ziarati


1 commentaires

Très similaire à mon problème, je n'avais pas installé le compileSDK pour le projet que j'ouvrais.



0
votes

pour mon cas, c'était parce que certaines licences sdk n'étaient pas acceptées. Je l'ai compris quand j'ai exécuté le gradlew via la ligne de commande. le lien ci-dessous vous montre comment accepter toutes les licences via l'outil sdkManager.

Vous n'avez pas accepté les contrats de licence des composants SDK suivants


0 commentaires

8
votes

Cela m'est arrivé lorsque j'ai acheté un nouvel ordinateur portable et que j'ai fait une nouvelle installation d'Android Studio.

J'ai résolu ce problème en installant la version appropriée du SDK Android que mon projet cible. Seule l'API 29 a été installée sur ma nouvelle machine lors d'une nouvelle installation d'Android Studio, mais mon projet cible l'API 28.

Ouvrez le gestionnaire de SDK et téléchargez le SDK Android approprié pour votre application et cette erreur devrait se résoudre d'elle-même.


1 commentaires

sauvé ma journée! Merci



-1
votes

démarrer Android Studio en "Exécuter en tant qu'Amdinistrator"


0 commentaires