2017-02-20 13 views
0

Я строю проект с использованием Java 7 с Eclipse Neon. Похоже, что когда я пытаюсь создать проект JavaFX, он будет включать в себя функции Java 8. Есть ли способ заставить более старую версию JavaFX?Как использовать более старую версию Java FX?

+0

Вы используете e (fx) clipse? Если нет, как вы создаете проект JavaFX? –

+0

Когда я создаю проект, я перехожу в new-> Other -> JavaFX и создаю там проект. Я не думаю, что я его установил, но я не знаю, поступил ли с ним Neon по умолчанию. – Jay266

+0

Итак, вы выбираете «Проект JavaFX» и, предположительно, нажмите «Далее». Что вы выбираете под JRE на следующем экране? И, я думаю, что именно вы подразумеваете под «в него будут включены функции Java 8»? –

ответ

0

SceneBuilder, показывающий материал FX8, не имеет ничего общего с вашим фактическим приложением. Как и некоторые люди, не используйте вещи, помеченные как FX8.

В конце концов, то, что SceneBuilder делает, просто генерирует то, что вы разработали (с его визуальным дизайнером) в FXML. Если FXML включает в себя классы (элементы управления), которые не являются частью Java 7 API, приложение запускает исключение при запуске.

Если он содержит элементы управления, присутствующие в Java 7, но FX8 предоставляет дополнительные свойства (или атрибуты в FXML), и вы указали эти свойства в SceneBuilder, скорее всего, те атрибуты FXML будут проигнорированы. Я не тестировал его, поэтому всегда существует вероятность того, что он может бросить исключения; все это зависит от того, как проектируется FXMLLoader.

В сводке, принять к сведению эти:

  1. Избегайте (я имею в виду совершенно не) с помощью элементов управления, меченные FX8.
  2. Убедитесь, что в пути построения проекта используется библиотека Java 7.
  3. Попробуйте загрузить FXML, который генерирует SceneBuilder - если он не генерирует исключения, это означает, что загруженный график узлов соответствует требованиям Java 7.