Мой код javafx обфусцирован успешно, но сейчас он не работает из-за ошибки при загрузке .fxml файла из основного метода - PullRequest
1 голос
/ 05 апреля 2019

Я запутал свой код javafx, содержащий файлы .fxml, для просмотра. После успешного запутывания, когда я запускаю файл jar с помощью командной строки, он показывает ошибку в основном методе, что код не может загрузить файл .fxml.

Пожалуйста, помогите

1 Ответ

0 голосов
/ 06 апреля 2019

Возможно, это не то, что вы ищете, но вы всегда можете использовать конвертер FXML в java для создания абстрактного класса.
Тогда у вас есть контроллер для файла xml, расширяющий абстрактный класс, вам придетсяудалите метод initialize (он больше не нужен) и измените аннотацию @FXML для любых методов, обрабатывающих события, на @ Overrides.
Также вам больше не понадобятся поля с аннотацией @FXML, поскольку все элементы управления будутдоступны через абстрактный базовый класс.Если вы используете Netbeans, есть плагин, который делает это доступным через портал плагинов, или здесь можно найти отдельный файл jar: https://www.tutorialon.com/p/fxmltojavaconverter.html

Тогда вместо загрузки fxml вы просто используете конструктор класса.Например, если корневым элементом в вашем FXML является BorderPane, вы должны использовать что-то вроде

BorderPane borderPane = new MyClass();
...