Tools.jar konnte nicht gefunden werden. Bitte überprüfen Sie, ob /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home eine gültige JDK-Installation enthält

Lesezeit: 7 Minuten

Benutzer-Avatar
Anandu Viswan

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':react-native-linear-gradient:compileDebugJavaWithJavac'.
> Could not find tools.jar. Please check that /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home contains a valid JDK installation.

Als ich auf Mac OS Big Sur aktualisiert und ausgeführt habe,

npx react-native run-android

Ich habe diesen Fehler (Android). Ich habe viele Lösungen von Stack Overflow ausprobiert, aber keine davon hat funktioniert.

Ich habe ein neues Projekt erstellt und es funktioniert. Auch einige der alten Projekte funktionieren einwandfrei.

*react-native Version: "0.63.3",*

Bitte helfen Sie mir, eine Lösung zu finden?

  • Beantwortet das deine Frage? Gradle findet tools.jar nicht

    – Emkarachi

    4. Dezember 2020 um 2:38 Uhr

  • Ähnlicher Ionic + Cordova Android-Build-Fehler – Tools.jar konnte nicht gefunden werden

    – tomfriwel

    9. Dezember 2020 um 6:27 Uhr


  • Für MacOS-Benutzer lesen Sie meine Antwort in einem anderen Thread: Ausführung fehlgeschlagen für Aufgabe „:app:compileDebugJavaWithJavac“. > Tools.jar konnte nicht gefunden werden

    – Natan Lotério

    4. Januar 2021 um 9:31 Uhr

  • @NatanLotério hat mir das Leben gerettet

    – Ronaldo Bahía

    7. Januar 2021 um 20:41 Uhr

Benutzer-Avatar
Cristian Gomez

Das Problem ist, dass mit dem Update das eingebaute Java Vorrang hatte und es das SDK nicht hat, weil es nur die Laufzeit ist.

Sie müssen nur Ihr Java-Home ändern und die Java-Binärdatei zu Ihrer .zshrc hinzufügen, um Ihr Java-Home zu finden, das ausgeführt wird:

/usr/libexec/java_home -V | grep jdk

Die Ausgabe sollte etwa so aussehen:

Matching Java Virtual Machines (1):
1.8.0_272 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 8" /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home

Sie sollten den Pfad von dem nehmen, der SDK in meinem Fall sagt

/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home

Danach fügen Sie einfach Folgendes am Ende Ihrer .zshrc hinzu, die sich in Ihrem Zuhause befinden sollte.

Sie können es mit bearbeiten (wenn Sie sich entscheiden, vim zu verwenden, können Sie beenden, indem Sie :wq! schreiben und die Eingabetaste drücken)

vim .zshrc

Folgendes hinzufügen:

export JAVA_HOME=the/path/you/copied/before
export PATH=$JAVA_HOME/bin:$PATH

wo der/Pfad/du/kopiert/bevor in meinem Fall wäre

/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home

Speichern Sie die Datei und schließen Sie alle Ihre Terminals und öffnen Sie sie erneut.

Wenn beim Bearbeiten der .zshrc-Datei der Fehler „.zshrc“ E212 angezeigt wird: Datei kann nicht zum Schreiben geöffnet werden, verwenden Sie sudo vim.zshrc und Sie können sie bearbeiten.

Der Fehler sollte behoben werden.

Bearbeiten

Anstatt von ~/.zshrcdu könntest haben ~/.bash_profile oder ~/.bash_rc also bearbeite deine entsprechend

  • Danke dafür hat perfekt geklappt. Ich denke, das Problem ist bei mir nach dem Update auf Big Sur aufgetreten

    – Fazbeere

    26. November 2020 um 12:17 Uhr

  • Vielen Dank!!!! Ich hatte dieses Problem drei Wochen lang, nach dem Update auf Big Sur

    – Israel Alfaro

    5. Dezember 2020 um 20:14 Uhr

  • Nach dem Versuch, die Datei zshrc in vim zu speichern, bekam ich —> “.zshrc” E212: Datei kann nicht zum Schreiben geöffnet werden

    – Максим Петлюк

    27. Dezember 2020 um 13:16 Uhr

  • @МаксимПетлюк Sie können jeden anderen Texteditor Ihrer Wahl verwenden.

    – Cristian Gomez

    27. Dezember 2020 um 23:19 Uhr

  • @CristianGomez ja, aber der Punkt ist, dass Mac OS mir anscheinend nicht die Möglichkeit gibt, diese Datei zu ändern. Sogar in einem anderen Texteditor, selbst nachdem ihm Schreibberechtigungen erteilt wurden und so weiter.

    – Максим Петлюк

    28. Dezember 2020 um 13:33 Uhr

Benutzer-Avatar
tomfriwel

In meinem Fall:

Ich habe den Befehl verwendet /usr/libexec/java_home -V | grep jdk Cristian Gomez bereitgestellt, bekam zwei Wege:

Matching Java Virtual Machines (2):
    1.8.181.13 (x86_64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
    1.8.0_111 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home

Wechseln .zshrc hat das Problem nicht gelöst.

Schließlich habe ich kopiert tools.jar in /Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home/lib/ zu /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/lib/ und das Problem gelöst.

Ich weiß nicht, ob dieser Ansatz zu irgendwelchen unbekannten Problemen führen wird.

  • Hat bei mir funktioniert. Keine Ahnung, wann mir das um die Ohren fliegt…

    – Sammann

    17. Dezember 2020 um 10:59 Uhr

  • Das Setzen von JAVA_HOME hat bei mir auch nicht funktioniert. Das Kopieren von tools.jar hat funktioniert, aber wie Sie beide sagten, könnte es später zu Problemen kommen. Stattdessen habe ich das Deinstallationstool von Java verwendet (java.com/en/download/uninstalltool.jsp), um Java von meinem Mac zu deinstallieren. Java kannte nur den Standort seiner Internet-Plug-ins und war sich der anderen 2 installierten Java-Versionen nicht bewusst, von denen das Terminal bereits wusste (virtuelle Maschinen). Bei der Deinstallation wurden nur die Internet-Plugins entfernt. Das java_home wird automatisch auf einen der anderen Ordner zurückgesetzt. Jetzt habe ich eine Java-Version weniger installiert, aber kein Kopieren von Dateien.

    – Abscheuliche Spiele

    22. Dezember 2020 um 3:47 Uhr

  • Dies hat auch mein Problem gelöst … Sie haben viel gespart

    – Amani

    28. Dezember 2020 um 19:09 Uhr

  • Außerdem wurde ‘JavaAppletPlugin.plugin’ in einen anderen Ordner verschoben, java_home wurde auf einen der anderen aufgelisteten Pfade zurückgesetzt, funktioniert vorerst.

    – Halbpad

    15. Februar 2021 um 14:28 Uhr

  • @Nemus Klicken Sie mit der rechten Maustaste auf JavaAppletPlugin.plugin und wählen Sie „Paketinhalt anzeigen“.

    – tomfriwel

    30. Juli 2021 um 5:27 Uhr

Benutzer-Avatar
Yokesh Sankar

Das hat bei mir funktioniert –

  1. Goto android folder > gradle.properties file > add below line org.gradle.java.home=/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home

    // Pfad zum JDK

  2. Führen Sie Ihr Projekt erneut aus

  • Es klappt !!! Es hat mir Zeit gespart. Ich verwende “react-native”: “^0.64.0”,

    – sahu

    16. April 2021 um 20:04 Uhr

  • Dies funktionierte auch für mich, keine Notwendigkeit, mit den tools.jar- oder anderen JAVA_HOME-Optionen herumzuspielen … weder .bashrc noch .zshrc auf meinem System.

    – Azursee

    28. Juni 2021 um 15:54 Uhr

  • Funktioniert auch für mich … React-Native-Cli: 2.0.1 React-Native: 0.64.2 Habe auch einen neuen Mac gekauft.

    – EinhornRegenbögen

    27. Juli 2021 um 15:10 Uhr

  • Das hat mir auch bei einem Flutter-Build für Android geholfen.

    – Josh Metcalfe

    13. August 2021 um 15:45 Uhr

  • Hat funktioniert, musste nur den Teil “/jdk” entfernen! Ich empfehle, den Pfad zu überprüfen, um den richtigen zu finden

    – Meisterstück

    10. April um 22:09 Uhr

Wenn Sie etwas in Ihrer ~/.zshrc haben, das dem ähnelt:

export JAVA_HOME=$(/usr/libexec/java_home -v1.8)

Genau wie Tomfriwell geschrieben hat, können Sie Folgendes ausführen:

/usr/libexec/java_home -V

, um die Pfade Ihrer installierten JVMs anzuzeigen und dann anzugeben, welche Sie verwenden möchten. z.B:

export JAVA_HOME=$(/usr/libexec/java_home -v1.8.0_261)

und das verknüpft die gewünschte JVM mit Ihrem Java-Befehl

nicht vergessen source ~/.zshrc nach dem Bearbeiten und Speichern

Da habe ich nicht ~/.zshrc Auf meinem Mac haben diese Schritte das Problem behoben:

1) Um Ihr Java-Home zu finden, führen Sie Folgendes aus:

/usr/libexec/java_home -V | grep jdk

und ich sehe das:

Matching Java Virtual Machines (2):
1.8.271.09 (x86_64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
1.8.0_171 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home

2) Zum Bearbeiten .bashrc Ich habe diesen Befehl verwendet:

nano ~/.bashrc

und ich sehe den nächsten Inhalt meiner ~/.bashrc:

# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export PATH="$PATH:$HOME/.rvm/bin"

3) Ich habe 2 Saiten am ENDE von hinzugefügt ~/.bashrc:

export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home"
export PATH="$JAVA_HOME/bin:$PATH"

wo JAVA_HOME Pfad – “/Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home” stammt aus SCHRITT 1(!):

1.8.0_171 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home

Bitte beachten Sie, dass Pfade in Anführungszeichen “” stehen müssen.

4) Schließen Sie alle Terminalfenster und erstellen Sie Android erneut.

Benutzer-Avatar
daozi

Das hat bei mir funktioniert: Starten Sie Java von der Neuinstallation.

sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -rf /Library/Java/JavaVirtualMachines
sudo rm -rf /Library/Application\ Support/Oracle/Java/
sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane

Starte den Computer neu.

Laden Sie Java herunter und installieren Sie es jdk-8u271-macosx-x64

Starte den Computer neu.

Benutzer-Avatar
xushao

  1. /usr/libexec/java_home -V | grep jdk

Passende Java Virtual Machines (2): 1.8.152.16 (x86_64) „Oracle Corporation“ – „Java“ /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home 1.8.0_152 (x86_64) „Oracle Corporation“ – „Java SE 8″ /Library/Java/JavaVirtualMachines/jdk1.8.0_152.jdk/Contents/Home

  1. Öffnen Sie “/Library/Internet Plug-Ins”, entfernen Sie JavaAppletPlugin.plugin

  2. OK

  • Hallo @xushao – Ihre Antwort scheint der hoch bewerteten akzeptierten Antwort nichts hinzuzufügen. Wenn Sie etwas Nützliches hinzufügen möchten, bearbeiten Sie bitte diese Antwort und fügen Sie sie hinzu

    – Herr R

    2. April 2021 um 9:44 Uhr

  • Ich kann Ihnen einfach nicht genug danken … Sie, mein Herr, sind ein Engel!

    – Farrukh Chishti

    3. Juli 2021 um 10:37 Uhr

  • Einfachste Lösung. Hat für mich funktioniert. Danke vielmals

    – Vishnu M Menon

    11. Januar um 16:23 Uhr


1345370cookie-checkTools.jar konnte nicht gefunden werden. Bitte überprüfen Sie, ob /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home eine gültige JDK-Installation enthält

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy