我试图从一个JavaFX应用程序内推出JavaFX应用程序,但它看起来像Application.launch()只能调用一次。 这是否意味着,我要开始独立的JVM ......在执行exec(“java的...或者是有另一种方式?
更多的背景资料。 我想我了JavaFx应用能够建立并运行了JavaFx的应用程序。 现在它编译类内存,加载的类...这将是非常不幸不得不求助于一切写在文件系统,所以我可以在文件系统中一个罐子,这样我就可以使用exec来启动它。
作为次要的问题...有没有办法打开另一个窗口了JavaFx并获得阶段,它传递给我的新编译和加载应用程序子类?
如果你想在同一个JVM执行另一个JavaFX应用程序,你可以只创建它的实例,手动创建Stage
,并调用Application#start()
public void runAnotherApp(Class<? extends Application> anotherAppClass) throws Exception {
Application app2 = anotherAppClass.newInstance();
Stage anotherStage = new Stage();
app2.start(anotherStage);
}
注:如果您使用anotherApp,例如,标准的初始化的特殊功能将无法正常工作Application.init()
或Application.getParameters()