ปลั๊กอิน IntelliJ Gradle: javaHome ที่ให้มาดูเหมือนจะไม่ถูกต้อง


98

คล้ายกับ:
- Intellij 14 javaHome ที่ให้มาดูเหมือนจะไม่ถูกต้อง
- Android Studio - javaHome ที่ให้มาไม่ใช่โฟลเดอร์ที่ถูกต้อง

อย่างไรก็ตามฉันพยายามใช้JAVA_HOMEตัวแปรของฉันซึ่งตั้งค่าเป็นC:\Program Files\Java\jdk1.8.0_40

ฉันไม่เข้าใจว่าทำไม intellij จึงมองหา JDK ภายในไดเร็กทอรีการติดตั้ง

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

คำตอบ:


76

IDEA มี 2 เวอร์ชัน: 32 บิตและ 64 บิต

ของคุณJAVA_HOMEเป็นรุ่น 64 บิตของ Java เพื่อให้คุณมีการเรียกใช้รุ่น 64 ...\IntelliJ\IntelliJ IDEA Community Edition 14.1.2\bin\idea64.exeบิตของความคิด

มิฉะนั้นคุณสามารถให้ JDK 32 บิตหรือปรับแต่งพฤติกรรมด้วยการตั้งค่า IDEA https://intellij-support.jetbrains.com/hc/en-us/articles/206544879-Selecting-the-JDK-version-the-IDE-will- วิ่งใต้


5
Segii พูดถูกเกี่ยวกับปัญหาของฉัน แต่ IMHO ปัญหาอยู่ในตัวติดตั้ง Intellij จะต้องมีคำถามที่ให้คุณเลือกจากไฟล์ปฏิบัติการ 32 บิต (Idea.exe) และ 64 บิต (idea64.exe) นอกจากนี้โปรแกรมติดตั้งควรสามารถตรวจสอบระบบของคุณและตรวจสอบว่าเป็นระบบปฏิบัติการ 32 บิตหรือ 64 บิตและเลือก. EXE ที่เหมาะสมเป็นค่าเริ่มต้น เพื่อให้แน่ใจว่าทางลัดใด ๆ ที่สร้างขึ้นโดยการติดตั้งชี้ไปยังเวอร์ชันที่ถูกต้อง
เจอร์รี่เคอร์

หลังจากติดตั้งทางลัด IntelliJ Idea ของฉันชี้ไปที่ exe 32 บิต ฉันอัปเดตทางลัดและแก้ไขปัญหาได้
Will Calderwood

IdeaJ แปลก ๆ 64 บิตไม่เริ่มทำงาน
อาร์วิมาน

นี่ไม่ตอบอะไร idk ทำไมถึงเป็นคำตอบหลัก อันด้านล่างดีกว่ามาก
bharal

207

ในกรณีของฉันคำตอบข้างต้นไม่ได้ผล นี่คือสิ่งที่ใช้ได้ผลสำหรับฉัน: ฉันต้องการเปลี่ยน Gradle JVM เพื่อชี้ไปที่ JDK จริง: ภาพแสดงหน้าต่างการตั้งค่า IntelliJ


4
ฉันคิดว่านี่เป็นคำตอบเดียวที่เกี่ยวข้องกับ "intellij gradle plugin" จริงๆ คำตอบอื่น ๆ ทั้งหมดไม่เกี่ยวข้อง
SOFe

คุณคือผู้ช่วยชีวิต!
Esen Mehmet


14

สิ่งนี้สามารถแก้ไขได้โดยการตั้งค่าProject SDK ในการตั้งค่าโมดูลเป็น JDK (ตรงข้ามกับโมดูล SDK (ซึ่งจะต้องเป็นAndroid SDK)


นี่กำลังทำให้ฉันขึ้นต้นไม้! คำตอบของคุณมีความหมายที่สมบูรณ์แบบแม้ว่า Gradle พยายามค้นหา java.exe ใน Android SDK (ราวกับ!)
JoeHz

ในกรณีของฉันคำตอบนี้ช่วยแก้ปัญหาของฉันได้ขอบคุณสำหรับคำตอบของคุณ!
mergenchik

11

ฉันลองสิ่งนี้และได้ผลสำหรับฉันอย่างไม่มีที่ติ ไปที่การตั้งค่า -> ค้นหา 'Gradle' ---> และเลือก Gradle JVM และเลือกตัวเลือกใช้ JAVA_HOME C: \ ProgramFiles \ Java \ JDK \ 1.8 หวังว่านี่จะช่วยใครบางคนได้


9

ฉันได้แก้ไขปัญหานี้โดยการใส่ไฟล์ gradle.properties ใน dir เดียวกันกับ build.gradle พร้อมพา ธ ที่แน่นอนไปยัง JDK ของฉัน:

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

จริงๆแล้วมันไม่ใช่วิธีแก้ปัญหาที่ถูกต้องน่าจะได้รับการแก้ไขใน IDE ฉันเห็นใน IDEA บันทึกบางอย่างเช่น (เมื่อฉันเรียกใช้งาน gradle ของโครงการที่นำเข้าแล้ว):

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

แต่เมื่อฉันจะนำเข้าโมดูล gradle ไปยังโปรเจ็กต์ฉันไม่เห็นข้อความประเภทนี้อาจเป็นไปได้ว่า IDEA ส่งลิงก์ไปยัง JRE ที่รวมไว้ซึ่งจริงๆแล้วไม่ใช่ JDK


4

ปัญหาอยู่ที่ Intellij IDEA เอง ถ้าคุณไปที่ Intellij ติดตั้งไดเรกทอรีที่คุณจะได้พบกับJREไดเรกทอรีที่มันหาดังกล่าวข้างต้นjava.exe แต่ปัญหาที่นี่คือไม่มีไดเร็กทอรีbinที่นี่แทนที่จะมีไดเร็กทอรีjreอื่นที่มีอยู่ดังนั้นวิธีแก้ปัญหาจึงอยู่ตรงหน้า คัดลอกเนื้อหาทั้งหมดจากไดเร็กทอรีjreภายในและวางไว้ในไดเร็กทอรีjreภายนอก


2

อัปเดตฉันเชื่อว่าปัญหานี้ได้รับการแก้ไขแล้วเมื่อวันที่ 14.1.3

ลิงค์จุดบกพร่องที่เกี่ยวข้อง:

ที่กล่าวว่าฉันสามารถทำได้โดยใช้คำตอบของ @Sergii Pechenizkyi อย่างไรก็ตามดูเหมือนว่าปัญหานี้มีวิธีแก้ไขที่แตกต่างกันเล็กน้อย


2

บน OSX 10.12.x, Intellij v16.3 ฉันต้องเข้าสู่:

  1. ~ / Library / Preferences / IntelliJIdea2016.3
  2. สร้างไฟล์ชื่อ: idea.jdk
  3. เพิ่มสิ่งต่อไปนี้: /Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk (หรืออะไรก็ตามที่คุณติดตั้ง JDK

นี่คือการแก้ไขที่ฉันต้องทำใน v16 ของ Intellij ที่พบในไซต์ jetbrains เมื่อถึงจุดหนึ่งฉันต้องลบมันออกในการอัปเกรดเป็น 16.3 ฉันต้องเพิ่มกลับเข้าไป https://intellij-support.jetbrains.com/hc/en-us/articles/206544879-Selecting-the-JDK-version-the-IDE-will-run-under


2

ฉันพบปัญหาเดียวกันมาระยะหนึ่งแล้วและไม่ว่าฉันจะดูฟอรัมจำนวนเท่าใดก็ไม่สามารถแก้ปัญหาได้

เรื่องสั้นสั้น ๆ ฉันพบว่าโปรแกรมป้องกันไวรัสของฉันกักกันไฟล์ java.exe ดังนั้นฉันแนะนำให้คุณเปิดโปรแกรมป้องกันไวรัสและกู้คืนไฟล์ Java.exe จากนั้นเปิดสตูดิโอ Android ใหม่



1

มันไม่ทำงานบน Mac เมื่อวันที่ 16.3 SDK ถูกตั้งค่าอย่างถูกต้องในการตั้งค่าโครงการและกล่องโต้ตอบ Gradle ไม่อนุญาตให้คุณเลือก JDK อีกต่อไป วิธีเดียวที่ใช้ได้ผลคือการสร้างไฟล์ gradle.properties


1

ใน IntelliJ 2018.1 ฉันพบปัญหานี้เนื่องจาก SDK โครงการของฉันถูกตั้งค่าเป็น Kotlin แทนที่จะเป็น JDK ดังนั้นแม้จะมีโครงการ Kotlin แต่ก็จะสร้างได้ก็ต่อเมื่อ SDK เป็น JDK


0

หลังจากลองวิธีแก้ปัญหาทั้งหมดข้างต้นไม่มีอะไรได้ผลสำหรับฉัน จากนั้นฉันตรวจดูว่าเส้นทาง "ใช้โครงการ jdk" สำหรับ java นั้นถูกต้องหรือไม่ หากต้องการดูภายใต้ ไฟล์ -> การตั้งค่า -> gradle-> gradle jvm ฉันพบว่า jdk ได้รับการอัปเดตและ gradle ใช้ jdk เวอร์ชันเก่า ดังนั้นวิธีแก้ปัญหาคือการอัปเดตเส้นทางโครงการ jdk สำหรับ java ใน intellij ไฟล์ -> โครงสร้างโครงการ -> การตั้งค่าแพลตฟอร์ม -> SDKที่นี่อัปเดตเส้นทาง jdk ที่ถูกต้องของคุณ ดังนั้นปัญหาจึงได้รับการแก้ไขสำหรับฉัน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.