有人建议使用javafx类加载和osgi解决问题的部分原因是将jfxrt移动到Java安装lib / ext目录,以便在JVM启动时加载它。
如果在Java的私有安装中完成,则javafx类在设计时可用,但在安装javafx软件包时在运行时找不到。
这可能会起作用吗?
我在eclipse中使用felix和bndtools作为Ubuntu 12.04上的开发环境。
答案 0 :(得分:3)
首先,使用javafx软件包的软件包必须使用Import-Package
导入它们。
接下来,您需要获取系统包以导出包。默认情况下,系统包仅导出标准JRE包和OSGi框架包;您可以通过设置属性org.osgi.framework.system.packages.extra
来扩展它。由于您使用的是Bndtools(好!),您可以按如下方式设置属性:
-runsystempackages: javafx.foo,javafx.bar...
答案 1 :(得分:1)
我最近发布了Drombler FX的第一个Early Access版本,这是一个基于OSGi和Maven(POM优先)的JavaFX模块化富客户端平台。
您可以在此处详细了解: http://puces-blog.blogspot.ch/2012/12/drombler-fx-building-modular-javafx.html
获取Startet: http://wiki.drombler.org/GettingStarted
此处说明生成的输出: http://wiki.drombler.org/GettingStarted#drombler-fx-sample-application-the-binaries-explained
(我没有移动任何JavaFX JAR。)