IntelliJ Gradle Plugin: Das mitgelieferte javaHome scheint ungültig zu sein

98

Ähnlich wie bei:
- Intellij 14 scheint das mitgelieferte javaHome ungültig zu sein.
- Mit Android Studio bereitgestelltes javaHome ist kein gültiger Ordner

Ich versuche jedoch, meine JAVA_HOMEVariable zu verwenden , die auf eingestellt istC:\Program Files\Java\jdk1.8.0_40

Ich verstehe nicht, warum Intellij das JDK in seinem Installationsverzeichnis sucht.

In der Intelligenz:

Executing external task 'bootRun'...
The supplied javaHome seems to be invalid. I cannot find the java executable. Tried location: C:\Program Files (x86)\JetBrains\IntelliJ IDEA 14.1\jre\bin\java.exe
External task execution finished 'bootRun'.

C:\>java -version
java version "1.8.0_40"
Java(TM) SE Runtime Environment (build 1.8.0_40-b25)
Java HotSpot(TM) 64-Bit Server VM (build 25.40-b25, mixed mode)

C:>env
...
JAVA_HOME=C:\Program Files\Java\jdk1.8.0_40
...
Eric Francis
quelle

Antworten:

76

IDEA gibt es in 2 Versionen: 32bit und 64bit.

Sie JAVA_HOMEist 64 - Bit - Version von Java so haben Sie 64 - Bit - Version des IDEA laufen ...\IntelliJ\IntelliJ IDEA Community Edition 14.1.2\bin\idea64.exe.

Andernfalls können Sie 32-Bit-JDK bereitstellen oder das Verhalten mit den IDEA-Einstellungen https://intellij-support.jetbrains.com/hc/en-us/articles/206544879-Selecting-the-JDK-version-the-IDE-will- unterlaufen

Sergii Pechenizkyi
quelle
5
Segii hatte Recht mit meinem Problem. Aber meiner Meinung nach liegt das Problem im Intellij-Installationsprogramm. Es muss eine Frage geben, mit der Sie zwischen ausführbaren 32-Bit- (Idea.exe) und 64-Bit- (idea64.exe) Dateien auswählen können. Außerdem sollte das Installationsprogramm in der Lage sein, Ihr System zu überprüfen und festzustellen, ob es sich um ein 32-Bit- oder 64-Bit-Betriebssystem handelt, und die entsprechende EXE-Datei als Standard auswählen. Dies würde sicherstellen, dass alle von der installierten Version erstellten Verknüpfungen auf die wahrscheinlich richtige Version verweisen.
JerryKur
Nach der Installation zeigte meine IntelliJ Idea-Verknüpfung auf die 32-Bit-Exe. Ich habe die Verknüpfung aktualisiert und das Problem behoben.
Will Calderwood
Seltsame, 64-Bit-Idee startet nicht.
Arviman
das beantwortet nichts, idk warum es die Hauptantwort ist. der unten ist viel besser.
Bharal
207

In meinem Fall haben die obigen Antworten nicht funktioniert. Folgendes funktioniert für mich: Ich musste Gradle JVM ändern, um auf das tatsächliche JDK zu verweisen: Bild zeigt das Fenster IntelliJ-Einstellungen

humazed
quelle
4
Ich denke, dies ist die einzige Antwort, die sich tatsächlich auf das "Intellij Gradle Plugin" bezieht. Alle anderen Antworten sind irrelevant.
SOFe
Du bist Lebensretter!
Esen Mehmet
33

Versuchen Sie, ein JDK manuell festzulegen File > Project Structure > Project > Project SDKund anschließend neu zu erstellen.

Mushfek0001
quelle
14

Dies kann behoben werden, indem das Projekt- SDK in den Moduleinstellungen auf ein JDK gesetzt wird (im Gegensatz zum Modul- SDK (das Android SDK sein soll)).

user39950
quelle
Das trieb mich auf einen Baum! Ihre Antwort ergab jedoch einen vollkommenen Sinn: Gradle hatte versucht, die java.exe im Android SDK zu finden (als ob!).
JoeHz
In meinem Fall hat diese Antwort mein Problem gelöst. Vielen Dank für Ihre Antwort!
Mergenchik
11

Ich habe es versucht und es hat bei mir einwandfrei funktioniert. Gehen Sie zu SETTING -> SEARCH 'Gradle' ---> und wählen Sie Gradle JVM und wählen Sie die Option Use JAVA_HOME C: \ ProgramFiles \ Java \ JDK \ 1.8. Ich hoffe, dies hilft jemandem.

maheshmnj
quelle
9

Ich habe dieses Problem gelöst, indem ich die Datei gradle.properties im selben Verzeichnis wie build.gradle mit dem genauen Pfad zu meinem JDK abgelegt habe:

org.gradle.java.home = C:/Dev/JDK

Eigentlich ist es keine richtige Lösung, wahrscheinlich sollte es in der IDE behoben werden, ich sehe in IDEA-Protokollen so etwas wie (wenn ich die Gradle-Aufgabe eines bereits importierten Projekts ausführe):

INFO - s.plugins.gradle.GradleManager - Instructing gradle to use java from C:/Dev/JDK

Aber wenn ich das Gradle-Modul in das Projekt importiere, sehe ich keine solche Nachricht. Wahrscheinlich gibt IDEA den Link an die gebündelte JRE weiter, die eigentlich kein JDK ist.

4 zog
quelle
4

Das Problem liegt in Intellij IDEA selbst. Wenn Sie zum installierten Intellij-Verzeichnis wechseln, finden Sie ein jre- Verzeichnis, in dem nach der oben genannten java.exe gesucht wird . Das Problem hierbei ist jedoch, dass hier kein bin- Verzeichnis vorhanden ist, sondern ein anderes jre- Verzeichnis. Die Lösung ist also im Voraus. Kopieren Sie den gesamten Inhalt aus dem inneren jre- Verzeichnis und legen Sie ihn im äußeren jre- Verzeichnis ab.

Pradyumna Swain
quelle
2

UPDATE Ich glaube, dieses Problem wurde ab 14.1.3 behoben

Verwandte Buglinks:

Trotzdem konnte ich die Antwort von @Sergii Pechenizkyi verwenden. Es scheint jedoch, dass dieses Problem einige unterschiedliche Lösungen hat.

Eric Francis
quelle
2

Unter OSX 10.12.x, Intellij v16.3 musste ich Folgendes ausführen:

  1. ~ / Library / Preferences / IntelliJIdea2016.3
  2. Erstellen Sie eine Datei mit dem Namen: idea.jdk
  3. Fügen Sie Folgendes hinzu: /Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk (oder das von Ihnen installierte JDK)

Dies war eine Korrektur, die ich in Version 16 von Intellij auf der Jetbrains-Website vornehmen musste. Irgendwann musste ich es entfernen, beim Upgrade auf 16.3 musste ich es wieder hinzufügen. https://intellij-support.jetbrains.com/hc/en-us/articles/206544879-Selecting-the-JDK-version-the-IDE-will-run-under

dkochheiser
quelle
2

Ich bin eine ganze Weile auf das gleiche Problem gestoßen, und egal wie viele Foren ich mir angesehen habe, es hat das Problem einfach nicht gelöst.

Kurz gesagt, ich habe herausgefunden, dass mein Antivirus die Datei java.exe unter Quarantäne gestellt hat. Daher rate ich Ihnen, Ihr Antivirenprogramm zu öffnen und die Datei Java.exe wiederherzustellen und dann die Android-Studios neu zu starten.

Haider Malik
quelle
1

Das Upgrade von IntelliJ UE von Version 14.1.1 auf 14.1.7 hat bei mir funktioniert.

user6718911
quelle
1

Es funktioniert nicht auf dem Mac ab 16.3. Das SDK wurde in den Projekteinstellungen korrekt eingestellt, und im Dialogfeld Gradle können Sie das JDK nicht mehr auswählen. Die einzige Lösung, die funktionierte, war das Erstellen der Datei gradle.properties.

user7369766
quelle
1

In IntelliJ 2018.1 stieß ich auf dieses Problem, weil mein Projekt-SDK auf Kotlin anstelle eines JDK eingestellt war. Trotz eines Kotlin-Projekts würde es nur erstellt, wenn das SDK ein JDK ist.

Kristopher Noronha
quelle
0

Nachdem ich alle oben genannten Lösungen ausprobiert hatte, funktionierte nichts für mich. Dann habe ich nachgesehen, ob der Pfad "Projekt jdk verwenden" für Java korrekt ist. Um es unter Datei-> Einstellungen-> gradle-> gradle jvm anzusehen, stellte ich fest, dass jdk aktualisiert wurde und gradle die alte jdk-Version verwendete. Die Lösung bestand also darin, den Project JDK-Pfad für Java in Intellij zu aktualisieren. Datei-> Projektstruktur-> Plattformeinstellung-> SDK , hier aktualisieren Sie Ihren rechten JDK-Pfad. Damit wurde das Problem für mich gelöst.

Akanksha Gore
quelle