1

我正在打包一个应用程序以通过 .kar 文件部署到 Karaf 中。我注意到,即使在我从部署文件夹中删除了 .kar 文件后,仍然安装了许多相关功能(在我的示例中来自 activemq 和 camel)。

这是预期的行为吗?我曾预料到部署是完全可逆的。

我的功能文件如下所示:-

<?xml version="1.0" encoding="UTF-8"?>
<features xmlns="http://karaf.apache.org/xmlns/features/v1.0.0">
    <repository>mvn:org.apache.camel.karaf/apache-camel/2.10.2/xml/features</repository>
    <repository>mvn:org.apache.activemq/activemq-karaf/5.7.0/xml/features</repository>
    <repository>mvn:io.hawt/hawtio-karaf/1.0/xml/features</repository>

    <feature name="jellyfish-messaging" version="0.0.2-SNAPSHOT">

        <!-- core components -->

        <feature version="2.2.8">war</feature>
        <feature version="2.6.3">cxf</feature>
        <feature version="2.10.2">camel-cxf</feature>
        <feature version="2.10.2">camel-blueprint</feature>
        <feature version="2.10.2">camel-jetty</feature>
        <feature version="2.10.2">camel-twitter</feature>
        <feature version="2.10.2">camel-mail</feature>
        <feature version="5.7.0">activemq-blueprint</feature>
        <feature version="5.7.0">activemq-spring</feature>
        <feature version="5.7.0">activemq-web-console</feature>
        <feature version="5.7.0">activemq-camel</feature>

        <!-- jellyfish messaging-specific -->

        <bundle dependency="true">mvn:org.jellyfish/jellyfish-messaging-broker/0.0.2-SNAPSHOT</bundle>

            ...etc etc etc

删除 .kar 文件后,我只剩下:-

karaf@root>features:list | grep activemq
[uninstalled] [5.4.2          ] activemq                              cxf-2.6.3                 
[installed  ] [5.7.0          ] activemq                              activemq-5.7.0            
[installed  ] [5.7.0          ] activemq-spring                       activemq-5.7.0            
[installed  ] [5.7.0          ] activemq-blueprint                    activemq-5.7.0            
[uninstalled] [5.7.0          ] activemq-optional                     activemq-5.7.0           
[installed  ] [5.7.0          ] activemq-camel                        activemq-5.7.0            
[installed  ] [5.7.0          ] activemq-web-console                  activemq-5.7.0            
[uninstalled] [5.7.0          ] activemq-extra                        activemq-5.7.0            

谢谢,

J。

4

1 回答 1

0

是的,这是一种预期的行为。kar 文件部署是一种在一个工件中提供功能和捆绑包的简单方法,尽管即使在卸载 kar 捆绑包之后功能描述符仍然存在。同样的事情是安装功能,现在不支持卸载传递功能。这方面的工作在最新版本 3.0.0 中完成

于 2013-07-01T19:23:52.240 回答