web-dev-qa-db-fra.com

android - Echec de l'exécution pour la tâche ': app: compileDebugJavaWithJavac'

Nouveau sur Android Studio + Gradle.

J'essaie d'exécuter mon application à partir de la ligne de commande en utilisant:

gradlew installDebug

L'application n'est installée sur mon appareil que lorsque j'exécute cette commande lorsque Studio vient juste d'être ouverte et que je fais la synchronisation/création initiale.

À chaque fois que je modifie mon code et que je tente à nouveau d'exécuter cette commande, la construction échoue et affiche l'erreur suivante:

Execution failed for task ':app:compileDebugJavaWithJavac'
> Could not find tools.jar

Comment résoudre ce problème? Merci d'avance.

19
Jeffrey Lopez

Définir la variable Java_HOME sur C:\Program Files\Java\jdkX.XX a fonctionné pour moi.

Il était précédemment défini sur le répertoire JRE pour une raison quelconque.

25
Jeffrey Lopez

Êtes-vous sur Linux? Que donne echo $Java_HOME?

J'ai eu un problème similaire lors de l'exécution de react-native run-Android. Après avoir défini $ Java_HOME (qui n’existait pas) dans un dossier JDK, le problème a été résolu. Dans mon cas, j'ai ajouté la ligne suivante à la fin de .bashrc file:

export Java_HOME="path/to/a/folder/with/JDK/jdk1.8.0_60"

et redémarré le terminal.

8
Alexandr Nil

Pour toute personne confrontée à ce problème après la mise à jour vers AndroidStudio-2.0

J'avais auparavant AndroidStudio-1.3 et jdk-1.7.X_XX. Lorsque j'ai mis à jour AndroidStudio-2.0, tout a bien fonctionné jusqu'au redémarrage de l'ordinateur. Après le redémarrage, j'ai rencontré cette erreur et aucune des réponses ci-dessus n'a fonctionné pour moi ... Voici ce que j'ai fait:

  1. Copié le projet dans un nouveau dossier
  2. Mise à niveau de ma version de jdk de 1.7.X_XX à 1.8.X_XX
  3. Changé le chemin du JDK dans la structure du projet pour le nouveau chemin:

    C:\Program Files\Java\jdk1.8.X_XX 

  4. Gradation sync

Et les choses ont fonctionné.

3
kds23

J'ai supprimé le fichier .gradle du répertoire racine du projet et ai reconstruit l'application, puis tout fonctionnait bien.

3
shivtej

TOUTES les réponses ci-dessus sont correctes. Je veux juste mentionner que si vous utilisez MAC, et le chemin complet du chemin JDK devrait être 

"/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home"

Ne manquez pas/Sommaire/Accueil

1
yuchaozh

Les réponses précédentes n'ont pas fonctionné pour moi. C’est ce qui a fonctionné: (Ubuntu, mais devrait aussi fonctionner pour d’autres)

  1. Accédez au dossier de votre projet: /.../projectlocation

  2. Puis dans le dossier Android: /.../projectlocation/Android

  3. Recherchez le fichier gradle.properties et ajoutez cette ligne n'importe où dans le fichier: org.gradle.Java.home=/usr/local/jdk1.8.0_91

Notez qu'il n'y a pas de guillemets et que le côté droit de l'exemple est mon dossier JDK.

1
Tanel

export Java_HOME = "/ Bibliothèque/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Sommaire/Accueil /"

j'utilise zshrc, j'ai ajouté la ligne . après cela avec soin echo $ Java_HOME dans terminalVous devriez voir /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home après cette construction être terminé.

0
Safak Ciplak

Je cherchais pendant plusieurs heures le dépassement de capacité de la pile et essayais tout ce qui était dit mais ne parvenais pas à résoudre le problème.Ensuite, le problème se trouvait dans mon nom de dossierproject.I juste renommer le nom du dossier et tout a bien fonctionné. 

0
Md Nakibul Hassan