จะสั่งให้ Gradle ใช้งานจาวาได้จากที่อื่นได้อย่างไร?


9

ฉันกำลังสร้างแอปทดสอบใน Android Studio จากนั้นในบันทึกเหตุการณ์จะกล่าวว่า:

Android Studio ใช้ตำแหน่ง JDK นี้: C: \ Program Files \ Android \ Android Studio \ jre ซึ่งแตกต่างจากสิ่งที่ Gradle ใช้ตามค่าเริ่มต้น: C: \ Program Files (x86) \ Java \ jdk1.8.0_181 การใช้ตำแหน่งอื่นอาจวางไข่ หลาย Gradle daemons ถ้างาน Gradle ถูกเรียกใช้จากบรรทัดคำสั่งขณะที่ใช้ Android Studio

จากนั้นให้ตัวเลือกเหล่านี้:

  1. ข้อมูลเพิ่มเติม...
  2. ตั้งค่า Android Studio ให้ใช้ JDK เช่นเดียวกับ Gradle และซิงค์
  3. อย่าแสดงคำเตือนนี้อีกครั้ง

ฉันคลิกที่:

ตั้งค่า Android Studio ให้ใช้ JDK เช่นเดียวกับ Gradle และซิงค์

แอพของฉันไม่ต้องการสร้างอีกต่อไป

นี่เป็นข้อผิดพลาด:

การซิงค์ Gradle ล้มเหลว: ไม่สามารถเริ่มกระบวนการ daemon
ปัญหานี้อาจเกิดจากการกำหนดค่า daemon ไม่ถูกต้อง

ตัวอย่างเช่นใช้อ็อพชัน jvm ที่ไม่รู้จัก
โปรดดูบทคู่มือผู้ใช้ใน daemon ที่ https://docs.gradle.org/5.4.1/userguide/gradle_daemon.html

บรรทัดคำสั่งของกระบวนการ: C: \ Program Files (x86) \ Java \ jdk1.8.0_181 \ bin \ java.exe -Xmx1536m -Dfile.encoding = windows-1252 -Duser.country = ZA -Duser.language = en -Duser ตัวแปร -cp C: \ Users \ {MyUserName} \. gradle \ wrapper \ dists \ gradle-5.4.1-all \ 3221gyojl5jsh0helicew7rwx \ gradle-5.4.1 \ lib \ gradle-launcher-5.4.1.jar org.gradle launcher.daemon.bootstrap.GradleDaemon 5.4.1

โปรดอ่านผลลัพธ์กระบวนการต่อไปนี้เพื่อหาข้อมูลเพิ่มเติม:

เกิดข้อผิดพลาดระหว่างการเริ่มต้นของ VM ไม่สามารถจองพื้นที่ว่างเพียงพอสำหรับวัตถุ 1572864KB ฮีปที่ปรึกษาบันทึก IDE สำหรับรายละเอียดเพิ่มเติม (วิธีใช้ | แสดงบันทึก) (16 วินาที 166 ms)

ฉันตรวจสอบบันทึกเหตุการณ์:

ฉันคิดว่าก่อนหน้านี้มันทำสิ่งนี้:

สั่งให้ gradle ใช้จาวาจาก C: / Program Files / Android / Android Studio / jre

ตอนนี้มันบอกว่านี้:

สั่งให้ gradle ใช้จาวาจาก C: / Program Files (x86) /Java/jdk1.8.0_181

ฉันจะตั้งค่ากลับเป็นวิธีที่แอพของฉันสามารถสร้างได้อีกครั้ง?

ความช่วยเหลือ / คำแนะนำใด ๆ ที่จะได้รับการชื่นชม

คำตอบ:


2

ไปที่ไฟล์โครงสร้างโครงการตำแหน่ง SDK และเปลี่ยนดรอปดาวน์ตำแหน่ง JDK เป็น JAVA_HOME

โครงสร้างโครงการใน Androdi Studio 3.6 beta


1
พยายามแล้วมีข้อผิดพลาดเช่นเดียวกับในคำถามของฉัน ฉันใช้ Windows 64 บิต
Shiasu-sama

1

คุณต้องเปลี่ยน / เพิ่มตัวแปรสภาพแวดล้อม

ตามลิงค์นี้เพื่อทราบวิธีการเปลี่ยน / เพิ่มตัวแปรสภาพแวดล้อม

ตอนนี้เพิ่ม / แก้ไขตัวแปร 'JAVA_HOME' และตั้งค่าเส้นทางเป็น C:\Program Files\Android\Android Studio\jre

หมายเหตุ: เมื่อคุณกำลังจะทำงานในโครงการ Java ที่แตกต่างกันในภายหลังใน IDE ที่แตกต่างกันคุณอาจต้องเปลี่ยนตัวแปรนี้อีกครั้งเพื่อที่ตั้ง Java เริ่มต้น (ในกรณีนี้อาจจะC:/Program Files (x86)/Java/jdk1.8.0_181)


0

Gradle เห็นได้ชัดว่าใช้การติดตั้ง java ดั้งเดิมของฉัน (จาก Oracle) ในขณะที่ Android Studio ใช้เวอร์ชันของตัวเอง

ฉันไม่สนใจคำเตือนนี้ตั้งแต่อัปเกรด Android Studio เป็น 3.6.1 ยังไม่มีปัญหา แน่นอนฉันได้เปิดตัวแอพเวอร์ชันใหม่โดยไม่มีปัญหา

หากสิ่งนี้กลายเป็นสิ่งที่น่ารำคาญและถ้าคุณไม่มีปัญหาอื่นคุณก็มีตัวเลือกที่จะเพิกเฉยต่อคำเตือนในอนาคต: เพียงแค่กดคำเตือนแล้วเลือกตัวเลือกเพื่อละเว้นข้อความในอนาคตที่เกี่ยวข้องกับคำเตือนนี้


0

Ubuntu 16.04 LTS, Android Studio 3.6

นั่นคือวิธีที่ฉันกำจัดคำเตือน:

1) ค้นหาสคริปต์ตัวเรียกใช้งาน AS studio.shบนเครื่องของคุณและอยู่ภายใต้: /opt/android-studio-3.x/bin
2) ภายในสคริปต์คุณจะพบบรรทัดต่อไปนี้:

# ---------------------------------------------------------------------
# Locate a JDK installation directory which will be used to run the IDE.
# Try (in order): STUDIO_JDK, studio.jdk, ./jre64, JDK_HOME, JAVA_HOME, "java" in PATH.
# ---------------------------------------------------------------------
if [ -n "$STUDIO_JDK" -a -x "$STUDIO_JDK/bin/java" ]; then
  JDK="$STUDIO_JDK"
fi

if [ -z "$JDK" -a -s "$HOME/.AndroidStudio3.6/config/studio.jdk" ]; then
  USER_JRE=`"$CAT" $HOME/.AndroidStudio3.6/config/studio.jdk`
...

3) ถ้าด้วยเหตุผลบางอย่างคุณไม่สามารถส่งออกตัวแปรสภาพแวดล้อมของคุณไปยังตัวเรียกใช้งาน (เช่นเกิดขึ้นกับฉันจากเซสชัน xfce4) คุณสามารถเขียนJAVA_HOMEค่าที่ต้องการภายในstudio.jdkไฟล์ที่มีตำแหน่งบนระบบของฉันตาม $HOME/.AndroidStudio3.6/config/studio.jdkสคริปต์อยู่ใน

$ echo $JAVA_HOME > $HOME/.AndroidStudio3.6/config/studio.jdk
$ cat $HOME/.AndroidStudio3.6/config/studio.jdk
/usr/lib/jvm/java-8-oracle

4) สุดท้ายโดยการรีสตาร์ท AS จากเซสชัน DE คุณจะเห็นส่วนJAVA_HOMEใต้ของไฟล์ -> โครงสร้างโครงการ ->หน้าต่างตำแหน่ง SDK ที่ตั้งค่าเป็นด้านบนและทั้ง AS และ gradle ควรใช้ JRE เดียวกัน:

หน้าต่างโครงสร้างโครงการ


-1

ใน Android Studio ฉันทำ:

ไฟล์> โครงสร้างโครงการ ... > ตำแหน่ง SDK (ในบานหน้าต่างด้านซ้าย)

จากนั้นที่ด้านล่างจะมีรายการแบบหล่นลงด้านล่าง: ตำแหน่ง JDK:

จากนั้นฉันเลือก / เรียกดูไปยังไดเรกทอรีนี้:

C: \ Program Files \ Java \ jdk1.8.0_181

Gradle Sync ทำงานอีกครั้งสำหรับฉันหลังจากนั้น แต่ฉันยังได้รับคำเตือนนี้:

Android สตูดิโอจะใช้สถานที่ตั้ง JDK นี้: C: \ Program Files \ Java \ jdk1.8.0_181ซึ่งจะแตกต่างกับสิ่งที่ใช้ Gradle โดยค่าเริ่มต้น: C: \ Program Files (x86) การใช้ตำแหน่งที่ต่างกันอาจส่งผลให้ Gradle daemons หลายตัวหากงาน Gradle รันจากบรรทัดคำสั่งขณะที่ใช้ Android Studio

  1. ข้อมูลเพิ่มเติม...
  2. ตั้งค่า Android Studio ให้ใช้ JDK เช่นเดียวกับโครงการ Gradle และซิงค์
  3. อย่าแสดงคำเตือนนี้อีกครั้ง

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