如何生成Karaf特征描述符

时间:2013-11-05 15:55:35

标签: java maven osgi maven-plugin packaging

我正在尝试自动生成Apache Karaf(2.3.0)功能desscriptor文件( features.xml )。

Karaf's doc我了解到我可以使用“功能”包装。

我的 pom.xml

<project>
...
    <packaging>feature</packaging>


    <dependencies>      
        <dependency>
            <groupId>org.apache.jclouds</groupId>
            <artifactId>jclouds-core</artifactId>
            <scope>provided</scope>
            <version>${jclouds.version}</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.karaf.tooling</groupId>
                <artifactId>karaf-maven-plugin</artifactId>
                <version>${karaf.version}</version>
                <extensions>true</extensions>
                <configuration>
                    <startLevel>80</startLevel>
                    <aggregateFeatures>true</aggregateFeatures>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>

但是mvn clean install抱怨:

  

未知包装:功能

我也试过使用features-maven-plugin,但我得到的结果相同。

1 个答案:

答案 0 :(得分:0)

我注意到maven repo中不存在org.apache.karaf.tooling:karaf-maven-plugin:jar:2.3.0

我将其更改为3.0.0.RC1,现在效果很好。这个解决方案适用于Karaf 3.x。

对于Karaf 2.x,问题出在包装上。 pom 可以http://karaf.apache.org/manual/latest-2.x/developers-guide/features-maven-plugin-generate.html

但是 features-maven-plugin的{​​{1}}此时不起作用,生成的功能文件为“空”。请参阅related issue