在OSGi应用程序中使用Openjfx 11类

Veljko Antonijevic


有人知道在Eclipse工作区中是否有使用JavaFX模块的方法吗?我有一个OSGi-maven多模块应用程序。

到目前为止,我已经尝试了一些方法。

  1. 要下载JavaFX SDK并在eclipse中将jar添加为用户定义的库。
  2. 捆绑JavaFX jar并将其用作常规OSGi捆绑(作为依赖项添加,并在目标平台中添加)。

这两件事都起作用。但是,在第一种情况下,每个开发人员都必须手动将这些jar作为库添加到类路径中。在第二个平台中,每个模块都必须有不同的捆绑包。

如果我都不做这些事情,那么我将遇到编译错误,即找不到JavaFX类(按预期)。

有第三种方法可以做到这一点吗?通过使用某些OSGi功能或类似功能?我还没有找到在MANIFEST.MF中添加模块的任何方法。那有可能吗?

我在OSGi框架启动器中添加了JavaFX模块作为VM参数,并且一切正常。但是我必须做前面提到的那些事情之一,这样我才不会出现编译错误。VM参数:--module-path /path/to/javafx/sdk/11/lib --add-modules javafx.controls,javafx.graphics,javafx.base

穆罕默

我试图将使用JRE 8的E4 / OSGI / GEF / JavaFx项目转换为JRE 11和OpenJFX 11,并找到了一种方法。

就我而言,我使用SWT和javafx.embed.swt.FxCanvas在模块路径中包括用户定义的JavaFX库不起作用,从而在编译时生成未找到的类错误;但是将库包含在classpath中是可行的。

我也无法使用--module-path参数运行应用程序它给了NoClassDefFoundError例外org.eclipse.swt.widgets.Canvas

我的解决方案使用E(fx)clipse,这也可能是您的第三个选择。在将javafx库包含org.eclipse.fx.osgi类路径中并包括在项目配置中之后,我使用以下VM参数使用E(fx)clipse加载JavaFX类。

-Dosgi.framework.extensions=org.eclipse.fx.osgi -Defxclipse.java-modules.dir=[openjfx-lib-directory]

您还可以添加-Defxclipse.osgi.hook.debug=true"以在加载类时查看来自E(fx)clipse的调试消息。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在应用程序中使用媒体类

在Rails应用程序中使用服务类

在应用程序类中使用静态接口是否安全?

可以在out应用程序中使用的类

在插件中使用主应用程序中的域类

C ++ 11类,用于管理应用程序设置

无法在捆绑的aurelia应用程序的单元测试中使用帮助程序类。RequireJS配置?

在Web应用程序或Web服务中使用实用程序类?

如何在Winforms应用程序中使用Unity容器从BLL类实例化DAL类

如何使用应用程序类来启动服务并在我的活动中使用它?

Angular 11 库模块已导入但未在消费应用程序中使用

我可以在iOS 应用程序中使用用python 编写的聚类模型吗?

如何在.NET核心应用程序中使用.NET核心类库?

如何在Windows 10 C#通用应用程序中使用C ++类?

如何在未附加到应用程序模型的类中使用eclipse 4 DI?

在Spring Boot应用程序中允许在哪些类中使用@Autowired?

JRuby on Rails:在Rails应用程序中使用自定义Java类

在ASP.NET MVC Web应用程序中使用静态全局变量类

Scala:如何在整个应用程序中使用Global Config案例类

在码头应用程序中使用resteasy-jackson-provider时缺少FindAnnotation类

在GWT应用程序中使用codehaus'ObjectMappper'类解析json

iOS创建实例并在应用程序的许多类中使用的最佳方法

如何在IOS的其他类中使用应用程序委托的int?

在ASP.NET5控制台应用程序中使用Startup类

Multidex和Singleton类在清单应用程序标记中使用android:name

如何创建单个 volley webservice 类以在整个 android 应用程序中使用?

在WPF应用程序中使用MVVM和DDD,而没有太多的类

无法在 VS 2017 应用程序中使用 MFC CObject 类

在Web应用程序中使用类时,出现字符不清晰的HttpWebResponse