我已经通过运行osgi:install命令(如
)创建了一个我在karaf中部署的war文件osgi:install -s file:/system/com/mywebapp/1.0.0/mywebapp-1.0.0.war
如何配置karaf以便在karaf实例启动时发生这种情况?
我已经更改了org.apache.karaf.features.cfg文件以默认启动war功能
featuresBoot=config,ssh,management,kar,war
答案 0 :(得分:3)
以下是war文件的示例features.xml -
<?xml version="1.0" encoding="UTF-8"?>
<features name="feature-set">
<feature name="my-feature" version="1.0.0"
xmlns="http://karaf.apache.org/xmlns/features/v1.0.0">
<feature>war</feature>
<bundle>mvn:com.foo/mywebapp/1.0.0/war</bundle>
</feature>
</features>
重要的部分是war文件的mvn url“mvn:com.foo / mywebapp/1.0.0 / war”。如果你错过路径中的后缀/ war,maven url会查找一个jar文件。
答案 1 :(得分:2)
最好创建自己的功能文件并从此功能文件开始战争,使用它还可以设置startlevel及其依赖项。 另一种部署方式是将war放在deploy文件夹中。