Java 9 JavaFX预加载器

Java 9 JavaFX预加载器,第1张

Java 9 JavaFX预加载

关于这个问题的答案有一条评论:

如何在JavaFX独立应用程序中将启动画面创建为Preloader?

系统属性

javafx.preloader=classname
似乎也起作用。

我没有尝试过,但是也许您可以尝试设置该属性,然后通过公共

Application.launch(appClass,args)
API 启动您的主应用程序,也许预加载器将首先启动。

查看的代码

Application.launch
,看来这是可行的。这是从Java 8源复制的最终调用的代码:

public static void launchApplication(final Class<? extends Application> appClass,        final String[] args) {    Class<? extends Preloader> preloaderClass = savedPreloaderClass;    if (preloaderClass == null) {        String preloaderByProperty = AccessController.doPrivileged((PrivilegedAction<String>) () ->     System.getProperty("javafx.preloader"));        if (preloaderByProperty != null) { try {     preloaderClass = (Class<? extends Preloader>) Class.forName(preloaderByProperty,  false, appClass.getClassLoader()); } catch (Exception e) {     System.err.printf("Could not load preloader class '" + preloaderByProperty +  "', continuing without preloader.");     e.printStackTrace(); }        }    }    launchApplication(appClass, preloaderClass, args);}

因此,您应该能够使用以下命令通过预加载器启动应用程序:

System.setProperty("javafx.preloader", "my fully qualified preloader class name");Application.launch(myMainClass, args);


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5490034.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存