Короткий ответ
Я запустил флягу с openJDK 11, в то время как JavaFX не создавался при его сборке с openJDK 8. Дело закрыто.
Выводы, подробности и причины
Поскольку моя среда IDE могла без проблем выполнять мой код, я предположил, что проблема связана с моей конфигурацией / машиной.Как выяснилось, Canonical / Ubuntu решили
[For] Bionic [...] переместить JRE / JDK по умолчанию в main на OpenJDK 11 в сентябре / октябре 2018 года какSRU. AskUbuntu
И, как указано в другом потоке SO:
JavaFX 11 больше не является частью JDK StackOverflow
(Это также включает инструкции, как исправить это с помощью JDK 11)
И, наконец, согласно закону Мерфи, я настроил свою упаковкупроект 4-го октября, и решил установить eclipse через apt 8-го октября, который включает в себя openjdk-11-jdk:amd64
(это записано в полезные /var/log/apt/history.log
).
Это также обновил мой /etc/alternatives/java
чтобы указать на v11.Поскольку я запустил jar без явного указания двоичного файла java, он сломался.
Запуск
/usr/lib/jvm/java-8-openjdk-amd64/bin/java -jar target/app.jar
для быстрого теста работает, как и ожидалось.Теперь мне нужно только обновить мой проект до openJDK 11, либо всегда запускать мое приложение с определенным JDK 8.