Я пытаюсь создать приложение JavaFX на Windows 10, Oracle JDK 10.0.2 и Eclipse Photon. Приложение работает, также, если я экспортирую его как исполняемый файл jar, оно работает. Для правильной сборки я открываю «FX Build Configuration», нажимаю «Generate ant build.xml и запускаю».
Сборка завершается с ошибкой:
init-fx-tasks:
[taskdef] Could not load definitions from resource com/sun/javafx/tools/ant/antlib.xml. It could not be found.
do-deploy:
BUILD FAILED
C:\Users\myname\eclipse-workspace\MyProgram\build\build.xml:90: Problem: failed to create task or type javafx:com.sun.javafx.tools.ant:resources
Cause: The name is undefined.
Action: Check the spelling.
Action: Check that any custom tasks/types have been declared.
Action: Check that any <presetdef>/<macrodef> declarations have taken place.
No types or tasks have been defined in this namespace yet
Просматривая форум, я понимаю, что проблема связана со средой выполнения / сборки. Автоматически сгенерированные build.xml
состояния
<target name="init-fx-tasks">
<path id="fxant">
<filelist>
<file name="${java.home}\..\lib\ant-javafx.jar"/>
<file name="${java.home}\lib\jfxrt.jar"/>
</filelist>
</path>
<taskdef resource="com/sun/javafx/tools/ant/antlib.xml"
uri="javafx:com.sun.javafx.tools.ant"
classpathref="fxant"/>
</target>
Я установил Oracle JDK с путями по умолчанию для установщика: C:\Program Files\Java\jdk-10.0.2
и JRE, а также C:\Program Files\Java\jre-10.0.2
, но не могу найти jfxrt.jar
, требуемый build.xml
, в любом месте файловой системы, в то время как я могу найти C:\Program Files\Java\jdk-10.0.2\lib\ant-javafx.jar
.
В Eclipse Photon, в Run->External Tools->External Tools Configuration->JRE
выбран элемент «Отдельный JRE» и установлено значение «jdk-10.0.2».
Кто-нибудь знает, как это решить?
Большое спасибо