我正在将我的Maven JavaFX应用程序从Java 8迁移到Java 11.我将我的pom.xml中的插件更新为最新的(符合Java 11的)插件。编译运行正常,给我罐子和……
我发现了一个解决方法 https://github.com/javafxports/openjdk-jfx/issues/236 。
此解决方法包括创建一个新的常规(非Java Fx)类,该类将成为Jar的主类,此类将启动基于JavaFx的原始应用程序类。
这是我找到解决方法的链接中的新类:
public class Main { public static void main(String[] args) { HelloFX.main(args); } }
希望这有助于某人。我没有将这个答案标记为正确答案,因为它是一种解决方法,而不是一个真正的解决方案。
编辑:事实证明,JavaFX文档中描述的解决方法如下: https://openjfx.io/openjfx-docs/#modular
正如这里所解释的,为了创建一个可运行的jar包含所有 必需的JavaFX依赖项,您将需要使用启动器类 不从应用程序扩展。