我正在使用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
答案 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请求)。 还有谷歌 - 番石榴依赖,也必须包装。