需要从eclipse插件代码访问JavaFX

我正在尝试在 Eclipse 插件的 Java 8 代码中使用 JavaFX 包。我能够编译它,但在运行时插件无法加载 JavaFX 类。看起来,OSGi Plug-in 不能从“[JAVA]\jre\lib\ext\”目录加载类,但可以从“[JAVA]\jre\lib\”加载类。任何有关如何解决问题的指示都非常感谢。

** 我知道 e(fx)clipse 或将 jfxrt.jar 复制到插件类路径可以解决此问题,但我想知道为什么插件无法从 /ext/ 加载JRE 的路径。


汪汪一只猫
浏览 183回答 1
1回答

慕标琳琳

正如以下链接中提到的 未解决的 JavaFX 包在 OSGi Felix 应用程序中,我们执行了以下步骤来解决该问题。以下是 OSGi 配置属性。org.osgi.framework.bundle.parent- 指定哪个类加载器用于启动委托。可能的值有:boot 用于引导类加载器,app 用于应用程序类加载器,ext 用于扩展类加载器,以及 framework 用于框架的类加载器。默认是引导。org.osgi.framework.system.packages- 指定应通过系统包从框架类加载器导出的包的逗号分隔列表。框架会将其设置为合理的默认值。如果指定了该值,它将替换任何默认值。所以通过添加-Dorg.osgi.framework.bundle.parent=ext  -Dorg.osgi.framework.system.packages.extra=javafx.* VM args,它添加了必需的依赖项。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java