Plugin IntelliJ Gradle: javaHome được cung cấp dường như không hợp lệ


98

Tương tự như:
- Intellij 14 javaHome được cung cấp dường như không hợp lệ
- Android Studio - javaHome được cung cấp không phải là một thư mục hợp lệ

Tuy nhiên, tôi đang cố gắng sử dụng JAVA_HOMEbiến được đặt thànhC:\Program Files\Java\jdk1.8.0_40

Tôi không hiểu tại sao intellij lại tìm kiếm JDK bên trong thư mục cài đặt của nó.

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

Câu trả lời:


76

IDEA có 2 phiên bản: 32bit và 64bit.

JAVA_HOMEPhiên bản Java của bạn là 64 bit, vì vậy bạn phải chạy phiên bản 64 bit của IDEA ...\IntelliJ\IntelliJ IDEA Community Edition 14.1.2\bin\idea64.exe.

Nếu không, bạn có thể cung cấp JDK 32 bit hoặc điều chỉnh hành vi với cài đặt IDEA https://intellij-support.jetbrains.com/hc/en-us/articles/206544879-Selecting-the-JDK-version-the-IDE-will- chạy dưới


5
Segii đã đúng về vấn đề của tôi. Nhưng IMHO vấn đề nằm trong trình cài đặt Intellij. Nó cần phải có một câu hỏi cho phép bạn chọn từ các tệp thực thi 32 bit (Idea.exe) và 64 bit (idea64.exe). Ngoài ra, trình cài đặt sẽ có thể kiểm tra hệ thống của bạn và xác định xem nó là HĐH 32 bit hay 64 bit và chọn .EXE thích hợp làm mặc định. Điều đó sẽ đảm bảo mọi phím tắt được tạo bởi cài đặt đều trỏ đến phiên bản có khả năng chính xác.
JerryKur

Sau khi cài đặt, phím tắt IntelliJ Idea của tôi đã trỏ đến exe 32bit. Tôi đã cập nhật phím tắt và điều đó đã giải quyết được vấn đề.
Will Calderwood

Kỳ lạ, IdeaJ 64 bit không khởi động.
arviman

điều này không trả lời bất cứ điều gì, idk tại sao nó là câu trả lời chính. cái bên dưới tốt hơn nhiều.
bharal

207

Trong trường hợp của tôi, các câu trả lời trên không hoạt động. Đây là những gì phù hợp với tôi: Tôi cần thay đổi Gradle JVM để trỏ đến JDK thực tế: Hình ảnh hiển thị cửa sổ Cài đặt IntelliJ


4
Tôi nghĩ đây là câu trả lời duy nhất thực sự liên quan đến "plugin intellij gradle". Tất cả các câu trả lời khác đều không liên quan.
SOFe

Bạn là phao cứu sinh!
Esen Mehmet

33

Thử đặt thủ công một JDK từ File > Project Structure > Project > Project SDK, Sau đó xây dựng lại.


14

Điều này có thể được khắc phục bằng cách đặt SDK dự án trong cài đặt Mô-đun thành JDK (trái ngược với SDK mô-đun (sẽ là Android SDK)


Điều này đã đưa tôi lên một cái cây! Tuy nhiên, câu trả lời của bạn hoàn toàn có ý nghĩa: Gradle đã cố gắng tìm java.exe trong Android SDK (như thể!).
JoeHz

trong trường hợp của tôi câu trả lời này đã giải quyết được vấn đề của tôi, cảm ơn bạn đã trả lời!
mergenchik

11

Tôi đã thử điều này và nó làm việc cho tôi một cách hoàn hảo. Đi tới CÀI ĐẶT -> TÌM KIẾM 'Gradle' ---> và chọn Gradle JVM và chọn tùy chọn Sử dụng JAVA_HOME C: \ ProgramFiles \ Java \ JDK \ 1.8 hy vọng điều này sẽ giúp ai đó.


9

Tôi đã giải quyết vấn đề này bằng cách đặt tệp gradle.properties vào cùng một tệp như build.gradle với đường dẫn chính xác đến JDK của tôi:

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

Trên thực tế, nó không phải là một giải pháp chính xác, có lẽ nó phải được sửa trong IDE, tôi thấy trong nhật ký IDEA giống như (khi tôi thực hiện tác vụ gradle của dự án đã được nhập):

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

Nhưng khi tôi nhập mô-đun gradle vào dự án, tôi không thấy loại thông báo như vậy, có lẽ IDEA chuyển liên kết đến JRE được đóng gói thực sự không phải là JDK.


4

Vấn đề nằm ở chính Intellij IDEA. Nếu bạn vào thư mục đã cài đặt Intellij, bạn sẽ tìm thấy thư mục jre nơi nó đang tìm kiếm java.exe nói trên . Nhưng vấn đề ở đây là không có thư mục bin nào ở đây thay vào đó là một thư mục jre khác có sẵn. Vì vậy, giải pháp là cần thiết. sao chép tất cả nội dung từ thư mục jre bên trong và đặt nó vào thư mục jre bên ngoài .


2

CẬP NHẬT Tôi tin rằng sự cố này đã được khắc phục kể từ ngày 14.1.3

Liên kết lỗi liên quan:

Điều đó nói rằng, tôi có thể có được bằng cách sử dụng câu trả lời của @Sergii Pechenizkyi; tuy nhiên, có vẻ như vấn đề này có một vài giải pháp khác nhau.


2

Trên OSX 10.12.x, Intellij v16.3, tôi phải truy cập:

  1. ~ / Library / Preferences / IntelliJIdea2016.3
  2. Tạo một tệp có tên: idea.jdk
  3. Thêm phần sau vào nó: /Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk (hoặc bất kỳ JDK nào bạn đã cài đặt

Đây là một bản sửa lỗi mà tôi phải thực hiện trong v16 của Intellij được tìm thấy trên trang web jetbrains. Có lúc tôi phải xóa nó đi, khi nâng cấp lên 16.3, tôi phải thêm lại. https://intellij-support.jetbrains.com/hc/en-us/articles/206544879-Selecting-the-JDK-version-the-IDE-will-run-under


2

Tôi đã gặp phải vấn đề tương tự trong một thời gian khá dài và cho dù tôi có xem qua bao nhiêu diễn đàn cũng không giải quyết được vấn đề.

Một câu chuyện ngắn, tôi phát hiện ra rằng phần mềm chống vi-rút của tôi đã cách ly tệp java.exe. Vì vậy, tôi khuyên bạn nên mở chương trình chống vi-rút và khôi phục tệp Java.exe sau đó khởi chạy lại các studio android.



1

Nó không hoạt động trên Mac kể từ ngày 16.3. SDK đã được đặt chính xác trong Cài đặt dự án và hộp thoại Gradle không còn cho phép bạn chọn JDK nữa. Giải pháp duy nhất hoạt động là tạo tệp gradle.properties.


1

trong IntelliJ 2018.1, tôi gặp sự cố này vì SDK dự án của tôi được đặt thành Kotlin thay vì JDK. Vì vậy, mặc dù có một dự án Kotlin, nó sẽ chỉ xây dựng nếu SDK là một JDK.


0

Sau khi thử tất cả các giải pháp trên, không có gì làm việc cho tôi. Sau đó, tôi đã xem liệu đường dẫn "Sử dụng dự án jdk" cho java có đúng không. Để xem nó trong File-> settings-> gradle-> gradle jvm, tôi thấy rằng jdk đã được cập nhật và gradle đang sử dụng phiên bản jdk cũ. Vì vậy, giải pháp là cập nhật đường dẫn Project jdk cho java trong intellij. Tệp-> cấu trúc dự án-> Cài đặt nền tảng-> SDK , tại đây cập nhật đường dẫn jdk bên phải của bạn. do đó vấn đề đã được giải quyết cho tôi.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.