【发布时间】:2020-01-03 22:10:23
【问题描述】:
我正在尝试在 Eclipse 中为自包含的 Java (jdk 13.0.1) 和 JavaFX (javafx sdk 13.0.1) 应用程序设置一个项目。我正在使用带有 E(fx)clipse 插件的最新 Eclipse。我最终会添加一些额外的库和实际代码,但我只是在努力让测试构建工作并遇到一些问题。我已经尝试了很多我在这里找到的建议,但似乎没有一个有效。当前设置显示构建路径中的 jdk 和我从 javafx jdk jar 创建的用户库,在项目中没有错误或警告。
我也愿意接受有关更好方法的建议来实现这一点,我主要是在寻找一种方法来轻松地将应用程序与用户可能没有的更高版本的 Java 组合在一起,我将使用 JavaFX用于 GUI。
当我使用“Generate and build.xml and run”选项时遇到的错误是:
[javac] 1 warning
init-fx-tasks:
[taskdef] Could not load definitions from resource com/sun/javafx/tools/ant/antlib.xml. It could not be found.
BUILD FAILED
C:\Users\user\eclipse-workspace\Test\build\build.xml:132: 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
【问题讨论】:
-
看看这些说明:openjfx.io/openjfx-docs
-
这些是我最初遵循的说明(JavaFX 和 Eclipse,IDE 中的非模块化),但在尝试通过 Ant 构建项目时仍然出现错误。
-
那是因为据我所知不再支持 ant。错误消息明确指出 antlib.xml 资源不再存在。也许是时候切换到 Maven/Gradle 了。
-
奇怪,我认为 Ant 仍然是 Eclipse 的标准,它附带了它并且 E(fx)clipse 使用它。虽然它似乎在寻找错误的地方? antlib.xml 路径看起来像是希望 Ant 成为 JavaFX 包的一部分?