使用 install4j

问题描述

我使用 Preloader api 向我的独立 JavaFX 应用程序 (Java 8) 添加了启动画面。

从 IDE 和从命令行运行打包的 jar 时一切正常。

但是,当我从 install4j 启动器运行时,不会显示启动画面。 当应该显示初始屏幕时,我能够在任务栏中看到应用程序图标,然后它会短暂消失,当应用程序最终显示时再次出现。

解决方法

我已经使用 JavaFX DataApp 示例应用程序测试了 JavaFX 预加载器:

https://github.com/ingokegel/javafx-dataapp-sample

有关如何构建 install4j 项目的说明,请参阅 this commit

我可以看到预加载器。请查看并调查您的项目与 JavaFX DataApp 示例应用程序的不同之处。

,

问题是由我在安装程序中使用的参数 -Dprism.order=sw 引起的。删除该 VM 参数后,预加载器工作正常。

我的项目是一个独立的应用程序,其中 Preloader 并没有增加太多好处,而且我确实需要禁用硬件加速,所以我结束用一个简单的阶段替换 preloader,并在另一个线程中完成初始化,如{{3 }}。