SceneBuilder 2: Должны ли классы контроллера обязательно находиться в той же папке, что и файлы FXML для просмотра?

Мне нравятся JavaFX и SceneBuilder, но я просто не могу понять, как заставить SceneBuilder связывать мои представления FXML с их контроллерами Java, когда они не находятся в одной папке. Я просто хотел бы иметь эту структуру папок:

  package
     |-- model
     |-- view
     |   |--someElementView.fxml
     |   \--anotherElementView.fxml
     \-- control
         |--someElementController.java
         \--anotherElementController.java  

Вместо этого я могу заставить SceneBuilder распознавать мои контроллеры только в том случае, если у меня есть структура папок, которой я бы хотел избежать:

package
 |-- model
 \-- view
     |--someElementView.fxml
     |--anotherElementView.fxml
     |--someElementController.java
     \--anotherElementController.java 

Что происходит, когда файлы FXML и java находятся в одной и той же папке, SceneBuilder обнаруживает их и показывает выпадающий список с контроллерами java (то есть «package.view.someElementController» и «package.view.anotherElementController») для меня, чтобы выбрать из и все работает хорошо.

Если у меня есть проект со структурой папок с контроллерами в отдельной папке, SceneBuilder не предложит мне никакой возможности назначить класс контроллера. Если я просто введу его в текстовое поле контроллера (то есть «package.control.someElementController» или «package.control.someElementController»), он все равно не подберет переменные @FXML, определенные в контроллере Java.

Это ошибка в Scene Builder или я подхожу к вещам неправильно? У меня всегда есть контроллеры и представления в разных папках, и, поскольку это большой проект, я бы хотел сохранить порядок.

Ответы на вопрос(1)

Ваш ответ на вопрос