我有一个第三方jar,我正在使用Blowfish解密捆绑,我需要在apache karaf上部署。
所以现在我也需要karaf来了解这个jar,但我找到的每个解决方案都是为这个jar创建一个完整的包,这对于一个简单的库imo来说非常适合。
我已经做的是在我的本地maven存储库中安装该jar并添加依赖项,但这也不起作用(至少在karaf上)。
还有其他办法可以让apache karaf的第三方罐子上班吗?
答案 0 :(得分:2)
您使用的是功能xml文件吗?如果是这样,你可以使用wrap:mvn:使其可用:
<feature name="feature1" version="1.0.0">
<bundle>wrap:mvn:group.id/third.party.artefact.id/version</bundle>
<bundle>mvn:group.id/your.artefact/version</bundle>
</feature>
这将在运行时捆绑第三方jar,并确保已安装它以供您的捆绑使用。取自Karaf - Creating bundles
答案 1 :(得分:0)
对于@fiw,你可能想要使用Bndtools来修饰你的第三方jar。为了实现它:
类型:
java -jar bnd-2.4.0.jar wrap -o osgify-dependency.jar dependency.jar
其中 dependency.jar 是您的第三方, osgify-dependency.jar 将是输出。
部署到maven repo覆盖以前的maven坐标,或者使用不同的坐标部署第三方。
mvn deploy:deploy-file -Dfile osgify-dependency.jar ...