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
...
Eric Francis
sumber

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

Sergii Pechenizkyi
sumber
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

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

mushfek0001
sumber
14

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

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

maheshmnj.dll
sumber
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.

4ndrew
sumber
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 .

Pradyumna Swain
sumber
2

PEMBARUAN Saya yakin masalah ini telah diperbaiki sejak 14.1.3

Tautan bug terkait:

Karena itu, saya bisa mendapatkan dengan menggunakan jawaban @Sergii Pechenizkyi; Namun, tampaknya masalah ini memiliki beberapa solusi berbeda.

Eric Francis
sumber
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

dkochheiser.dll
sumber
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.

Haider Malik
sumber
1

Meningkatkan IntelliJ UE dari v14.1.1 menjadi 14.1.7 berhasil untuk saya.

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

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

Kristopher Noronha
sumber
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.

Akanksha menanduk
sumber