在OSGi容器中运行OrientDb客户端需要哪些捆绑包和依赖项

时间:2016-02-19 14:45:22

标签: osgi orientdb

我正在使用OrientDb数据库处理OSGi应用程序。我现在正试图让我们的OSGi容器中运行OrientDb客户端。

OrientDb网站说明了使用OrientDb客户端时您的应用程序需要哪些jar /依赖项。 OrientDb documentation about this

提到的一些罐子是OSGi包,有些则不是。我导入了所有OSGi包的jar,并将非OSGi jar包装成OSGi包。所以这些罐子都装在OSGi容器中。当我启动容器时,它会抱怨com.orientechnologies.orientdb-graphdb包需要导入包com.orientechnologies.orient.server。

我认为我不应该在OSGi容器中导入het orientdb-server - * .jar,因为这意味着我将导入几乎整个OrientDb服务器实例,而我只想使用OrientDb客户端。

为什么orientdb-graphdb- .jar依赖于orientdb-server - .jar? 我需要加载什么捆绑才能使用OrientDb客户端?

我使用的OrientDb版本是2.1.9

2 个答案:

答案 0 :(得分:1)

有一个experimental apache karaf feature for orientdb。尝试使用这些捆绑包。好消息是那里提到的所有罐子都已经捆绑了。

答案 1 :(得分:0)

OrientDB库已经附带了OSGi包信息,但不幸的是蓝图API库没有,甚至还有一个带有拉取请求的问题,但它被拒绝,因为Blueprints开发人员认为不值得添加2-向MANIFEST.MF提供3行元信息,真是太可惜了(和PITA)。

在我的项目中,我有一个官方OrientDB库的工作配置: * orientdb-core * orientdb-client * orientdb-graphdb * orientdb-enterpise(仅适用于版本< 2.2)

我使用优秀的OPS4J Tipi project包装蓝图库(还必须准备一个git pull请求)。 还有谷歌 - 番石榴依赖,也必须包装。