1. Linux
Ако използвате 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
file. Той се намира в инсталирания JDK на пътя:<JDK_PATH>/jre/lib/ext/jfxrt.jar
- Щракнете OK .
2. JDK 11+
Може също да срещнете проблеми при стартирането на играта, ако използвате JDK version 11 or по-нова: Java JDK 11 вече не включва библиотеката JavaFX . Това означава, че когато стартирате играта, компилаторът няма да може да я компorра и ще има грешка. За да разрешите проблема, трябва да добавите JavaFX към проекта:
- Изтеглете JavaFX SDK за Windows от https://gluonhq.com/products/javafx/ .
- Разархивирайте изтегления архив във всяка папка (за предпочитане в
lib
папката на проекта Games ). - Отворете IDEA .
- В IDEA отидете на Файл → Структура на проекта...
- Изберете раздела Библиотеки и натиснете + → Java .
- Посочете пътя до разопакованата
javafx-sdk
папка и изберетеlib
папката - След това натиснете OK . В новия прозорец добавете JavaFX към модула Игри .
- Сега трябва да се появи новата библиотека. Натиснете Приложи → OK .
- За да започнете правилно, отворете менюто Run → Edit configuration и в полето VM options: напишете следното:
--module-path ./lib/javafx-sdk-16/lib --add-modules=javafx.controls,javafx.fxml,javafx.base
ВНИМАНИЕ:
В последните версии на IntelliJ IDEA полето „VM options“ не се показва по подразбиране. За да го покажете, натиснете ALT+V
- След това в същия раздел трябва да добавите приложение. За да направите това, натиснете + → Приложение
- Изпълнете следните стъпки:
- Изберете модул Игри
- Напишете пътя до основния клас (в този случай,
SnakeGame
) - За полето VM options въведете същата стойност като в т. 9.
- Натиснете: Приложи → OK
- Стартирайте играта.