Почему scenebuilder 2.0 не смог открыть файл fxml?

У меня есть файл fxml, который я создал с помощью SceneBuilder 2.0. Этот файл используется в моем проекте JavaFx, который я разрабатываю с помощью Netbeans 8. Сегодня, SceneBuilder перестал работать с моим файлом. Когда я попытался открыть его, SceneBuilder минимизирует и не откроет файл. У меня нет никаких пользовательских компонентов в графике сцены.

Я скопировал содержимое файла в новый файл FXML и дал ему новое имя. Затем SceneBuilder смог открыть этот файл, хотя содержимое идентично файлу, который не удалось открыть.

Что здесь происходит?

мои извинения, но я не могу опубликовать содержимое файла fxml.

7 ответов


ОК.. так вот я ищу решение этой странной проблемы! Видя, что ни один из других ответов не работает на меня, я сделал самое случайное, что мог придумать, и это сработало.

Open SceneBuilder (a brand new one). Go to File > Open Recent > Clear Menu. Close Scene Builder.

теперь ошибка должна быть исправлена (это было для меня)

PS: мне стыдно публиковать этот ответ. Но так как это неприятный жук, который потратил время впустую, я не хочу, чтобы кто-то еще тратил их".

PPS: кроме того, я не могу дважды проверить это решение, так как это сработало для меня, и я больше не могу воссоздать сценарий багги.


Я решил эту проблему, alt-tabbing в программу SB, а затем максимизируя окно (ярлык: клавиша окна + стрелка вверх).

кажется, ошибка SB.


У меня была та же проблема. похоже, это баг.

Я решил это, создав новый файл FXML (пустой) и скопировал в него весь код исходного файла FXML . Новый FXML, открытый SceneBuilder.


также была эта проблема с Win 7. Трюк состоит в том, чтобы щелкнуть правой кнопкой мыши значок панели задач SB, развернуть окно, перетащить его вниз по строке заголовка, и появится настоящее крошечное окно, изменить размер окна, и это должно сделать это. Я думаю, что это ошибка отображения SB. Удача.


потратил ~4 часа, и я решил это таким образом. В моем документе fxml у меня было FlowPane с </child> тег. Я изменил его на <child></child> и это сработало-SceneBuilder открыл документ fxml. Я знаю, что это супер retardet, и я не могу объяснить, почему это происходит, но я могу воспроизвести это...


в NetBeans перейдите в Инструменты; Параметры; Java; JavaFX и установите путь к дому построителя сцен. Это должно исправить проблему


для меня проблема заключалась в пути изображения, которое я давал в файле FXML. я смог решить проблему, используя @ с последующим путем изображения. С помощью этой синтаксической ошибки вы сможете запустить приложение, но построитель сцен откажется открыть файл.

например (предполагая, что вы предоставляете относительный путь):

неправильный синтаксис:

               <ImageView fitHeight="31.0" fitWidth="40.0" pickOnBounds="true" preserveRatio="true" >
                   <image>
                       <Image url="img/image.png"></Image>
                   </image>
               </ImageView>

синтаксис:

               <ImageView fitHeight="31.0" fitWidth="40.0" pickOnBounds="true" preserveRatio="true" >
                   <image>
                       <Image url="@/img/1000px-evobus.svg1.png"></Image>
                   </image>
               </ImageView>