如何将依赖项添加到 Eclipse e4 RCP 应用程序?
How to add dependencies to an Eclipse e4 RCP application?
我正在开发 Eclipse e4 RCP 应用程序并想使用 Jersey REST 客户端调用 RESTful 网络服务,但是当我将依赖项添加到插件 MANIFEST.MF
文件时应用程序失败才能正确启动。
我要添加的依赖项是javax.ws.rs
、org.glassfish.jersey.core.jersey-client
和org.glassfish.jersey.media.jersey-media-json-jackson
。所有这三个都已添加到从 Eclipse Orbit 下载的目标定义文件(因此它们已经包含必要的 OSGI 信息)和插件 MANIFEST.MF
文件。
该项目由两个插件模块组成,一个指定两个插件的功能模块,一个指定功能的产品模块,以及一个目标定义模块。第一个插件是 com.xxx.application
并且是主要应用程序。第二个插件是 com.xxx.demo
并为主应用程序提供了一部分。这是我尝试添加依赖项的第二个插件。
当我尝试通过产品文件启动应用程序时,返回以下错误消息...
!ENTRY org.eclipse.e4.ui.workbench 4 0 2018-05-02 14:52:36.033
!MESSAGE Unable to retrieve the bundle from the URI: bundleclass://com.xxx.demo/com.xxx.demo.DemoPart
问题似乎发生在将三个依赖项中的任何一个添加到 com.xxx.demo
插件的 MANIFEST.MF
文件时,如果我从 MANIFEST.MF
文件中删除依赖项,它会正确启动.我没有在调用 Web 服务的插件中包含任何 JAX-RS 代码,所以我知道当我将依赖项添加到清单文件时会触发问题。
我在设置依赖项时是否遗漏了什么导致应用程序无法启动,或者是否有更好的方法向插件添加依赖项?
插件的MANIFEST.MF一般只需要列出它直接依赖的其他插件即可。
使用基于功能的 .product 文件时,产品中的 feature.xml 文件必须列出 RCP 中所需的每个插件。如果未列出某些内容,则不会包含在内。
我正在开发 Eclipse e4 RCP 应用程序并想使用 Jersey REST 客户端调用 RESTful 网络服务,但是当我将依赖项添加到插件 MANIFEST.MF
文件时应用程序失败才能正确启动。
我要添加的依赖项是javax.ws.rs
、org.glassfish.jersey.core.jersey-client
和org.glassfish.jersey.media.jersey-media-json-jackson
。所有这三个都已添加到从 Eclipse Orbit 下载的目标定义文件(因此它们已经包含必要的 OSGI 信息)和插件 MANIFEST.MF
文件。
该项目由两个插件模块组成,一个指定两个插件的功能模块,一个指定功能的产品模块,以及一个目标定义模块。第一个插件是 com.xxx.application
并且是主要应用程序。第二个插件是 com.xxx.demo
并为主应用程序提供了一部分。这是我尝试添加依赖项的第二个插件。
当我尝试通过产品文件启动应用程序时,返回以下错误消息...
!ENTRY org.eclipse.e4.ui.workbench 4 0 2018-05-02 14:52:36.033
!MESSAGE Unable to retrieve the bundle from the URI: bundleclass://com.xxx.demo/com.xxx.demo.DemoPart
问题似乎发生在将三个依赖项中的任何一个添加到 com.xxx.demo
插件的 MANIFEST.MF
文件时,如果我从 MANIFEST.MF
文件中删除依赖项,它会正确启动.我没有在调用 Web 服务的插件中包含任何 JAX-RS 代码,所以我知道当我将依赖项添加到清单文件时会触发问题。
我在设置依赖项时是否遗漏了什么导致应用程序无法启动,或者是否有更好的方法向插件添加依赖项?
插件的MANIFEST.MF一般只需要列出它直接依赖的其他插件即可。
使用基于功能的 .product 文件时,产品中的 feature.xml 文件必须列出 RCP 中所需的每个插件。如果未列出某些内容,则不会包含在内。