当前位置: 首页 > 知识库问答 >
问题:

OSGI处理第三方JAR及其依赖关系

梁丘伟
2023-03-14

我是OSGI开发的新手,很难理解如何最好地处理依赖的JAR。

也就是说,如果我要创建一个bundle,我可能需要使用几个第三方jar。当我创建bundle JAR以部署到OSGI时,显然这些第三方JAR不包括在内,因此bundle将无法运行。

共有1个答案

危寒
2023-03-14

使用apache karaf也常常是一个很大的帮助。有karaf特性与预定义的deps为许多库,如activemq,cxf,camel,openjpa,······

在最坏的情况下,您可以将lib和所有dep嵌入到自己的jar中。但是,如果您试图在包之间共享一些类,这往往会导致类加载问题。

你的案子有什么问题?

 类似资料:
  • 问题内容: 我才刚刚开始OSGI开发,并且正在努力了解如何最好地处理依赖的JAR。 即,如果我要创建捆绑包,则很有可能需要使用一些第三方JAR。当我创建要部署到OSGI的捆绑软件JAR时,显然不包括这些第三方JAR,因此捆绑软件将无法运行。 我知道一种选择是将这些JAR打包成束,然后将它们部署到OSGI容器中。但是,如果只需要一个捆绑包使用它们,这似乎并不理想。 最好的解决方案是什么?可以将JAR

  • 如果我有一个OSGI Bundle jar中嵌套了依赖项jar,我是否需要在导入包清单中列出这些类以便使用它们?我不这么认为。 另外,我如何将这些依赖项jar添加到我的包中。我只是把它们放在根文件夹里吗?我是否需要向清单文件添加任何内容才能使用这些依赖关系?

  • 我是OSGI新手(抱歉),在尝试部署我的包和相关依赖项时遇到了一些问题。 这是我的POM: 然后我使用Maven命令捆绑它: mvn org . Apache . Felix:maven-bundle-plugin:bundle all 这是成功的,并生成我的包以及3个依赖包: net.sf.ehcache_2.10.0.jar org.apache.commons.lang3_3.4.0.jar

  • 在感觉自己已经掌握了如何使用OSGi之后,我尝试向我的应用程序添加第三方依赖,特别是log4j2,该应用程序使用ApacheFelix并与maven捆绑插件捆绑。不幸的是,我似乎陷入了依赖地狱。 我尝试过使用许多maven捆绑包策略,如导入包,嵌入依赖,wrapImportPackage,Embed-Transitive,以及设置特定的版本号,仅举几例。以下是我的pom在这个插件中的样子: 我觉得

  • Apache ShardingSphere 在数据库治理模块使用 SPI 方式载入数据到配置中心和注册中心,进行实例熔断和数据库禁用。 目前,Apache ShardingSphere 内部支持 ZooKeeper,Etcd等常用的配置中心/注册中心。 此外,开发者可以使用其他第三方组件,并通过 SPI 的方式注入到 Apache ShardingSphere,从而使用该配置中心和注册中心,实现数

  • 我当前设置中最麻烦的部分是由于Tycho显然无法处理只使用Maven(即非OSGi)的工件。我当前的设置如下所示: > 在每个Eclipse插件的中,我在阶段向发出目标。这将把我指定的工件解压缩到单独的目录中。 目录作为输出目录添加到中,以便Tycho在编译时将其添加到类路径中: 这些设置允许Maven指令编译插件。从VCS导入项目,并手动指定目录作为Eclipse中的类文件夹,这样IDE也可以编