需要从eclipse插件代码访问JavaFX
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了需要从eclipse插件代码访问JavaFX相关的知识,希望对你有一定的参考价值。
我试图在eclipse插件的Java 8代码中使用JavaFX包。我能够编译它,但在运行时插件无法加载JavaFX类。看起来,OSGi插件无法从“[JAVA] jre lib ext ”目录加载类,但能够从“[JAVA] jre lib ”加载类。任何指示如何解决问题的人都非常感激。
**我知道有一种方法可以将e(fx)剪切或复制jfxrt.jar复制到插件类路径将解决问题,但我想知道为什么插件无法从/ ext /加载JRE的路径。
如以下链接Unresolved JavaFX packages in OSGi Felix Application中所述,我们执行了以下步骤来解决此问题。以下是OSGi配置属性。
org.osgi.framework.bundle.parent
- 指定用于引导委派的类加载器。可能的值包括:引导类加载器的引导,应用程序类加载器的应用程序,扩展类加载器的ext以及框架的类加载器的框架。默认为启动。
org.osgi.framework.system.packages
- 指定应该从框架类加载器通过System Bundle导出的以逗号分隔的包列表。框架将此设置为合理的默认值。如果指定了值,则它将替换任何默认值。
所以加入
-Dorg.osgi.framework.bundle.parent=ext
-Dorg.osgi.framework.system.packages.extra=javafx.*
VM args,它添加了所需的依赖项。
以上是关于需要从eclipse插件代码访问JavaFX的主要内容,如果未能解决你的问题,请参考以下文章
如何在 eclipse kepler 中查看 JavaFX SDK 的源代码?
如何在 Eclipse 中为任何 jar 文件附加源代码或 JavaDoc,例如JavaFX?
无法访问类 com.sun.javafx.util.Utils(在模块 javafx.graphics 中)-JavaFX 和 Eclipse