Plugin Gradle IntelliJ: javaHome yang disediakan tampaknya tidak valid


98

Mirip dengan:
- Intellij 14 javaHome yang disediakan tampaknya tidak valid
- Android Studio - javaHome yang disediakan bukan folder yang valid

Namun, saya mencoba menggunakan JAVA_HOMEvariabel saya yang disetel keC:\Program Files\Java\jdk1.8.0_40

Saya tidak mengerti mengapa intellij mencari JDK di dalam direktori instalasinya.

Dalam intellij:

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
...

Jawaban:


76

IDEA hadir dalam 2 versi: 32bit dan 64bit.

Anda JAVA_HOMEadalah versi Java 64-bit sehingga Anda harus menjalankan IDEA versi 64-bit ...\IntelliJ\IntelliJ IDEA Community Edition 14.1.2\bin\idea64.exe.

Jika tidak, Anda dapat memberikan JDK 32bit atau mengubah perilaku dengan pengaturan IDEA https://intellij-support.jetbrains.com/hc/en-us/articles/206544879-Selecting-the-JDK-version-the-IDE-will- run-under


5
Segii benar tentang masalah saya. Tapi IMHO masalahnya ada di penginstal Intellij. Perlu ada pertanyaan yang memungkinkan Anda memilih dari file executable 32 bit (Idea.exe) dan 64 bit (idea64.exe). Selain itu, penginstal harus dapat memeriksa sistem Anda dan menentukan apakah itu OS 32 bit atau 64 bit dan memilih .EXE yang sesuai sebagai default. Itu akan memastikan setiap pintasan yang dibuat oleh yang diinstal menunjuk ke versi yang mungkin benar.
JerryKur

Setelah menginstal, pintasan IntelliJ Idea saya mengarah ke exe 32bit. Saya memperbarui pintasan dan itu menyelesaikan masalah.
Will Calderwood

Aneh, IdeaJ 64 bit tidak dapat dijalankan.
arviman

ini tidak menjawab apapun, idk kenapa itu jawaban utama. yang di bawah ini jauh lebih baik.
bharal

207

Dalam kasus saya, jawaban di atas tidak berhasil. Inilah yang berhasil untuk saya: Saya perlu mengubah Gradle JVM agar mengarah ke JDK yang sebenarnya: Gambar menunjukkan jendela Pengaturan IntelliJ


4
Saya rasa ini adalah satu-satunya jawaban yang sebenarnya terkait dengan "plugin gradle intellij". Semua jawaban lain tidak relevan.
SOFe

Anda adalah penyelamat!
Esen Mehmet

33

Coba atur JDK secara manual dari File > Project Structure > Project > Project SDK, Lalu buat ulang.


14

Ini dapat diperbaiki dengan mengatur Project SDK dalam pengaturan Module ke JDK (sebagai lawan dari Module SDK (yang seharusnya Android SDK)


Ini membuatku naik pohon! Jawaban Anda sangat masuk akal untuk semuanya: Gradle telah mencoba menemukan java.exe di Android SDK (seolah-olah!).
JoeHz

dalam kasus saya jawaban ini menyelesaikan masalah saya, terima kasih atas jawaban Anda!
mergenchik

11

Saya mencoba ini dan itu berhasil untuk saya dengan sempurna. pergi ke SETTING -> SEARCH 'Gradle' ---> dan pilih Gradle JVM dan pilih opsi Use JAVA_HOME C: \ ProgramFiles \ Java \ JDK \ 1.8 harap ini membantu seseorang.


9

Saya telah memecahkan masalah ini dengan meletakkan file gradle.properties di direktori yang sama dengan build.gradle dengan jalur yang tepat ke JDK saya:

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

Sebenarnya ini bukan solusi yang tepat, mungkin itu harus diperbaiki di IDE, saya melihat di IDEA log seperti (ketika saya menjalankan tugas gradle dari proyek yang sudah diimpor):

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

Tetapi ketika saya akan mengimpor modul gradle ke proyek, saya tidak melihat pesan seperti itu, mungkin IDEA meneruskan tautan ke JRE yang dibundel yang sebenarnya bukan JDK.


4

Masalahnya terletak pada Intellij IDEA itu sendiri. Jika Anda pergi ke direktori yang diinstal Intellij, Anda akan menemukan direktori jre di mana ia mencari java.exe di atas . Tetapi masalahnya di sini adalah tidak ada direktori bin di sini, melainkan direktori jre lain yang tersedia. Jadi, solusinya dimuka. salin semua konten dari direktori jre dalam dan letakkan di direktori jre luar .



2

Di OSX 10.12.x, Intellij v16.3, saya harus membuka:

  1. ~ / Library / Preferences / IntelliJIdea2016.3
  2. Buat file bernama: idea.jdk
  3. Tambahkan baris berikut ke dalamnya: /Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk (atau JDK apa pun yang telah Anda instal

Ini adalah perbaikan yang harus saya lakukan di v16 dari Intellij yang ditemukan di situs jetbrains. Pada satu titik saya harus menghapusnya, pada peningkatan ke 16.3 saya harus menambahkannya kembali. https://intellij-support.jetbrains.com/hc/en-us/articles/206544879-Selecting-the-JDK-version-the-IDE-will-run-under


2

Saya mengalami masalah yang sama selama beberapa waktu dan tidak peduli berapa banyak forum yang saya lihat, itu tidak menyelesaikan masalah.

Singkatnya, saya menemukan antivirus saya mengkarantina file java.exe. Jadi saya menyarankan Anda untuk membuka antivirus Anda dan memulihkan file Java.exe kemudian meluncurkan kembali studio android.



1

Ini tidak berfungsi di Mac sejak 16.3. SDK disetel dengan benar di Project Settings dan kotak dialog Gradle tidak lagi memungkinkan Anda memilih JDK. Satu-satunya solusi yang berhasil adalah membuat file gradle.properties.


1

di IntelliJ 2018.1, saya mengalami masalah ini karena SDK proyek saya disetel ke Kotlin, bukan JDK. Jadi, meskipun memiliki proyek Kotlin, itu hanya akan dibangun jika SDK-nya adalah JDK.


0

Setelah mencoba semua solusi di atas, tidak ada yang berhasil untuk saya. Kemudian saya melihat apakah jalur "Gunakan proyek jdk" untuk java sudah benar. Untuk melihatnya di bawah File-> pengaturan-> gradle-> gradle jvm saya menemukan bahwa jdk diperbarui dan gradle menggunakan versi jdk lama. Jadi, solusinya adalah memperbarui jalur jdk Proyek untuk java di intellij. File-> struktur proyek-> Pengaturan platform-> SDK , di sini perbarui jalur jdk kanan Anda. dengan demikian masalah itu terpecahkan untuk saya.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.