1. ลินุกซ์
หากคุณใช้LinuxและOpenJDKมีโอกาสที่คอมไพเลอร์จะส่งข้อผิดพลาดเมื่อคุณเรียกใช้เกม:
Error:(6, 8) java: cannot access javafx.application.Application class file for javafx.application.Application not found
คุณควรทำอะไร?
ปัญหาที่นี่คือเอ็นจิ้นเกม CodeGym ใช้ ไลบรารี JavaFXแต่OpenJDKไม่ได้ติดตั้งไลบรารีนี้ตามค่าเริ่มต้น สิ่งนี้จำเป็นต้องได้รับการแก้ไข:
- บนบรรทัดรับคำสั่ง ให้ป้อนคำสั่งต่อไปนี้:
sudo apt-get install openjfx
- หลังจากนั้นไปที่การตั้งค่าโครงการ ( ALT + CTRL + SHIFT + s ) → SDK → Classpathแล้วคลิกไอคอนบวกทางด้านขวา เลือก
jfxrt.jar
ไฟล์ ตั้งอยู่ใน JDK ที่ติดตั้งที่เส้นทาง:<JDK_PATH>/jre/lib/ext/jfxrt.jar
- คลิกตกลง _
2. เจดีเค 11+
คุณอาจประสบปัญหาในการรันเกมหากคุณใช้ JDK เวอร์ชัน 11 หรือใหม่กว่า: Java JDK 11 ไม่มีไลบรารีJavaFX อีกต่อ ไป ซึ่งหมายความว่าเมื่อคุณรันเกม คอมไพเลอร์จะไม่สามารถคอมไพล์ได้ และจะมีข้อผิดพลาดเกิดขึ้น ในการแก้ไขปัญหา คุณต้องเพิ่ม JavaFX ในโครงการ:
- ดาวน์โหลดJavaFX SDKสำหรับWindows จากhttps://gluonhq.com/products/javafx/
- เปิดเครื่องรูดไฟล์เก็บถาวรที่ดาวน์โหลดไปยังโฟลเดอร์ใดก็ได้ (ควรเป็น
lib
โฟลเดอร์ของ โครงการ Games ) - เปิดไอเดีย
- ใน IDEA ให้ไปที่File → Project Structure...
- เลือก แท็บ Librariesแล้วกด+ → Java
- ระบุพาธไปยัง
javafx-sdk
โฟลเดอร์ที่แตกไฟล์แล้วเลือกlib
โฟลเดอร์ - จาก นั้นกดตกลง ในหน้าต่างใหม่ เพิ่มJavaFXในโมดูลเกม
- ห้องสมุดใหม่ควรปรากฏขึ้น กดสมัคร → ตกลง _
- ในการเริ่มต้นอย่างถูกต้อง ให้เปิดเมนูRun → Edit configurationและใน ช่อง VM options:ให้เขียนข้อความต่อไปนี้:
--module-path ./lib/javafx-sdk-16/lib --add-modules=javafx.controls,javafx.fxml,javafx.base
ความสนใจ:
ใน IntelliJ IDEA เวอร์ชันล่าสุด ฟิลด์ "ตัวเลือก VM" จะไม่แสดงตามค่าเริ่มต้น หากต้องการแสดง ให้กดALT+V
- จากนั้นในแท็บเดียวกัน คุณต้องเพิ่มแอปพลิเคชัน ในการทำเช่นนี้ ให้กด+ → แอปพลิเคชัน
- ทำตามขั้นตอนเหล่านี้:
- เลือกโมดูลเกม
- เขียนเส้นทางไปยังคลาสหลัก (ในกรณีนี้
SnakeGame
) - สำหรับ ฟิลด์ ตัวเลือก VMให้ป้อนค่าเดียวกับในข้อ 9
- กด: ใช้ → ตกลง
- เรียกใช้เกม
GO TO FULL VERSION