Почему SceneBuilder не позволяет мне импортировать пользовательский класс Groovy? - PullRequest
0 голосов
/ 10 апреля 2020

Я кодирую этот проект Gradle JavaFX полностью в Groovy.

Я подклассифицировал TableTreeView, вследствие чего SceneBuilder выбросил ClassNotFoundException, когда я пытался открыть .f xml file.

Но я не могу найти способа импортировать этот пользовательский класс в SceneBuilder. Когда я создаю и компилирую класс как класс Java, я могу упаковать его файл .class как файл .jar и успешно импортировать его в менеджер библиотек SceneBuilder.

Но по какой-то причине самый простой из возможных Groovy эквиваленты не работают, например:

package core;

import javafx.scene.control.TreeTableView;

public class TTV4 extends TreeTableView {
        String bubble = "bubble";
}

... когда я пытаюсь импортировать это в диспетчер библиотек SceneBuilder, он не показывает GUI доступных для импорта компонентов.

По своей наивности я предполагал, что байт-код, созданный Groovy, был в значительной степени выполнен Java и, по сути, неотличим от него. NB. Я добавил точки с запятой и слово public выше, чтобы проверить, может ли полученный файл .class быть приемлемым.

Может быть, есть какой-то переключатель или твик, который я могу использовать для создания файла .class, которым SceneBuilder будет доволен?

Кстати, просто согласиться объединить Java и Groovy В этом проекте не все так просто, так как кажется, что есть проблемы (даже если они находятся в местах по умолчанию, например, src / java / main и src / groovy / main), которые заставляют Java «видеть» классы Groovy который я хочу сослаться в этом подклассе.

...