Wtyczka IntelliJ Gradle: dostarczony javaHome wydaje się być nieprawidłowy


98

Podobnie do:
- Intellij 14 dostarczony javaHome wydaje się być nieprawidłowy
- Android Studio - podany javaHome nie jest prawidłowym folderem

Jednak próbuję użyć mojej JAVA_HOMEzmiennej, która jest ustawiona naC:\Program Files\Java\jdk1.8.0_40

Nie rozumiem, dlaczego Intellij szuka JDK w swoim katalogu instalacyjnym.

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

Odpowiedzi:


76

IDEA występuje w 2 wersjach: 32-bitowej i 64-bitowej.

Twoja JAVA_HOMEjest 64-bitowa wersja Javy, więc musisz uruchomić 64-bitową wersję IDEA ...\IntelliJ\IntelliJ IDEA Community Edition 14.1.2\bin\idea64.exe.

W przeciwnym razie możesz zapewnić 32-bitowy JDK lub dostosować zachowanie za pomocą ustawień IDEA https://intellij-support.jetbrains.com/hc/en-us/articles/206544879-Selecting-the-JDK-version-the-IDE-will- run-under


5
Segii miał rację co do mojego problemu. Ale IMHO problem tkwi w instalatorze Intellij. Musi mieć pytanie, które pozwoli ci wybrać pliki wykonywalne 32-bitowe (Idea.exe) i 64-bitowe (idea64.exe). Ponadto instalator powinien być w stanie sprawdzić system i określić, czy jest to 32-bitowy, czy 64-bitowy system operacyjny i wybrać odpowiedni plik .EXE jako domyślny. Zapewniłoby to, że wszelkie skróty utworzone przez zainstalowany program wskazywałyby prawdopodobnie poprawną wersję.
JerryKur

Po zainstalowaniu mój skrót IntelliJ Idea wskazywał na 32-bitowy exe. Zaktualizowałem skrót i to rozwiązało problem.
Will Calderwood

Dziwne, 64-bitowy IdeaJ nie uruchamia się.
arviman

to nic nie odpowiada, nie wiem, dlaczego jest to główna odpowiedź. ten poniżej jest znacznie lepszy.
bharal

207

W moim przypadku powyższe odpowiedzi nie zadziałały. Oto, co mi pomogło: musiałem zmienić Gradle JVM, aby wskazywał na rzeczywisty JDK: Obraz przedstawiający okno ustawień IntelliJ


4
Myślę, że jest to jedyna odpowiedź, która jest faktycznie związana z „wtyczką intellij gradle”. Wszystkie inne odpowiedzi są nieistotne.
SOFe

Jesteś ratownikiem!
Esen Mehmet

33

Spróbuj ręcznie ustawić JDK z File > Project Structure > Project > Project SDK, a następnie odbuduj.


14

Można to naprawić, ustawiając Project SDK w ustawieniach modułu na JDK (w przeciwieństwie do Module SDK (który powinien być Android SDK)


To wbijało mnie na drzewo! Twoja odpowiedź miała jednak doskonały sens: Gradle próbował znaleźć plik java.exe w Android SDK (jakby!).
JoeHz,

w moim przypadku ta odpowiedź rozwiązała mój problem, dziękuję za odpowiedź!
Połączenieenchik

11

Spróbowałem tego i zadziałało na mnie bez zarzutu. przejdź do SETTING -> SEARCH 'Gradle' ---> i wybierz Gradle JVM i wybierz opcję Use JAVA_HOME C: \ ProgramFiles \ Java \ JDK \ 1.8 mam nadzieję, że to komuś pomoże.


9

Rozwiązałem ten problem, umieszczając plik gradle.properties w tym samym katalogu co build.gradle z dokładną ścieżką do mojego JDK:

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

Właściwie to nie jest poprawne rozwiązanie, prawdopodobnie powinno zostać naprawione w IDE, w logach IDEA widzę coś takiego (gdy wykonuję zadanie gradle już zaimportowanego projektu):

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

Ale kiedy zamierzam zaimportować moduł gradle do projektu, nie widzę tego rodzaju komunikatu, prawdopodobnie IDEA przekazuje link do dołączonego JRE, który w rzeczywistości nie jest JDK.


4

Problem tkwi w samym Intellij IDEA. Jeśli przejdziesz do katalogu zainstalowanego Intellij, znajdziesz katalog jre, w którym szuka on wyżej wymienionego java.exe . Ale problem polega na tym, że nie ma tutaj katalogu bin zamiast innego dostępnego katalogu jre , więc rozwiązanie jest z góry. skopiuj całą zawartość z wewnętrznego katalogu jre i umieść ją w zewnętrznym katalogu jre .



2

Na OSX 10.12.x, Intellij v16.3, musiałem przejść do:

  1. ~ / Library / Preferences / IntelliJIdea2016.3
  2. Utwórz plik o nazwie: idea.jdk
  3. Dodaj do niego: /Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk (lub jakikolwiek JDK, który zainstalowałeś

To była poprawka, którą musiałem zrobić w wersji 16 Intellij znalezionej na stronie jetbrains. W pewnym momencie musiałem go usunąć, po aktualizacji do 16.3 musiałem go ponownie dodać. https://intellij-support.jetbrains.com/hc/en-us/articles/206544879-Selecting-the-JDK-version-the-IDE-will-run-under


2

Napotkałem ten sam problem od dłuższego czasu i bez względu na to, ile forów przeglądałem, po prostu nie rozwiązało problemu.

Krótko mówiąc, dowiedziałem się, że mój program antywirusowy poddał kwarantannie plik java.exe. Dlatego radzę otworzyć program antywirusowy i przywrócić plik Java.exe, a następnie ponownie uruchomić studia Android.



1

Od 16.3 nie działa na komputerach Mac. Zestaw SDK został poprawnie ustawiony w ustawieniach projektu, a okno dialogowe Gradle nie pozwala już na wybranie zestawu JDK. Jedynym rozwiązaniem, które działało, było utworzenie pliku gradle.properties.


1

w IntelliJ 2018.1 napotkałem ten problem, ponieważ mój projekt SDK był ustawiony na Kotlin zamiast JDK. Tak więc, pomimo posiadania projektu Kotlin, kompilowałby się tylko wtedy, gdy SDK jest JDK.


0

Po wypróbowaniu wszystkich powyższych rozwiązań nic mi nie pomogło. Następnie sprawdziłem, czy ścieżka „Użyj projektu jdk” dla języka Java jest poprawna. Aby zajrzeć do Plik-> ustawienia-> gradle-> gradle jvm , znalazłem, że jdk został zaktualizowany, a gradle używa starej wersji jdk. Tak więc rozwiązaniem była aktualizacja ścieżki projektu jdk dla języka Java w intellij. Plik-> struktura projektu-> Ustawienia platformy-> SDK , tutaj zaktualizuj swoją prawą ścieżkę jdk. w ten sposób problem został rozwiązany za mnie.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.