我遇到了这个post,但它并没有完全回答我的问题。我正在使用蓝图在Karaf中设置H2数据库,它要求我首先安装H2驱动程序和OSGi企业包,因为它包含JDBC库。
install -s mvn:org.osgi/org.osgi.enterprise/4.2.0
install -s mvn:com.h2database/h2/1.3.174
我将蓝图XML文件添加到了Karaf的deploy文件夹中,并且在我安装H2和企业软件包之前它一直给出错误消息。理想情况下,我想在蓝图脚本启动之前安装企业版和H2版,所以我想以某种方式将其添加到karaf的启动过程中,但我不确定如何。
任何见解都将非常感激。
答案 0 :(得分:0)
一种选择是在部署捆绑包之前热部署功能XML。
有关详细信息,请参阅Karaf deployer指南。这是一个XML示例:
<features>
<feature name="features_test">
<bundle>mvn:org.osgi/org.osgi.enterprise/4.2.0</bundle>
<bundle>mvn:com.h2database/h2/1.3.174</bundle>
</feature>
</features>
答案 1 :(得分:0)
实现此目的的一种方法是将蓝图文件发布到maven仓库。这样您就可以在功能文件中引用它。查看带有目标附加工件的maven build helper插件。许多功能文件都采用了部署方式。 您还可以将蓝图文件放入普通包中。然后它也可以在karaf以外的其他容器中工作。