Hi,
How do I get camel features automatically installed by a feature xml.
In my scenario, I am creating my own Karaf feature xml to install all dependent
bundles before my bundles can be started. From what I observe, few camel
features such as camel-core, camel-http4, camel-jackson are installed while
camel-blueprint does not get installed, this eventually cause an issue starting
my bundle.
Here is a simplified example.
1. Generate maven project
mvn archetype:generate \
-DarchetypeGroupId=org.apache.karaf.archetypes \
-DarchetypeArtifactId=karaf-feature-archetype \
-DarchetypeVersion=4.0.1 \
-DgroupId=com.acme.mediation \
-DartifactId=acme-mediation \
-Dversion=1.3.0-SNAPSHOT \
-Dpackage=com.acme.mediation \
-DinteractiveMode=false
2. Create feature xml as follow
[build@localhost EIP]$ cat acme-mediation/src/main/feature/feature.xml
<?xml version="1.0" encoding="UTF-8"?>
<features name="${project.artifactId}-${project.version}"
xmlns="http://karaf.apache.org/xmlns/features/v1.0.0">
<repository>mvn:org.apache.camel.karaf/apache-camel/2.15.2/xml/features</repository>
<feature name='${project.artifactId}-common' description='${project.name}'
version='${project.version}'>
<details>${project.description}</details>
<feature version="2.15.2" prerequisite="true"
dependency="true">camel</feature>
<feature version="2.15.2" prerequisite="true"
dependency="true">camel-blueprint</feature>
<feature version="2.15.2" prerequisite="true"
dependency="true">camel-jdbc</feature>
<feature version="2.15.2" prerequisite="true"
dependency="true">camel-http4</feature>
<feature version="2.15.2" prerequisite="true"
dependency="true">camel-jackson</feature>
</feature>
</features>
3. Add following to pom.xml (I am using Nexus as MRM)
<distributionManagement>
<snapshotRepository>
<id>snapshots</id>
<url>http://localhost:8081/nexus/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
4. Deploy the feature
mvn deploy
5. Install the feature in karaf (4.0.1)
dev@ubuntu:~/apache-karaf-4.0.1$ bin/karaf
karaf@root()> feature:repo-add
mvn:com.acme.mediation/acme-mediation/1.3.0-SNAPSHOT/xml/features
karaf@root()> feature:install acme-mediation-common
karaf@root()> feature:list -i
Name | Version |
Required | State | Repository | Description
-------------------------------------------------------------------------------------------------------------------------------------------------
acme-mediation-common | 1.3.0.SNAPSHOT | x | Started |
acme-mediation-1.3.0-SNAPSHOT | acme-mediation-feature
aries-proxy | 4.0.1 | |
Started | standard-4.0.1 | Aries Proxy
aries-blueprint | 4.0.1 | x |
Started | standard-4.0.1 | Aries Blueprint
feature | 4.0.1 | x
| Started | standard-4.0.1 | Features Support
shell | 4.0.1 | x
| Started | standard-4.0.1 | Karaf Shell
shell-compat | 4.0.1 | x |
Started | standard-4.0.1 | Karaf Shell Compatibility
deployer | 4.0.1 | x |
Started | standard-4.0.1 | Karaf Deployer
bundle | 4.0.1 | x
| Started | standard-4.0.1 | Provide Bundle support
config | 4.0.1 | x
| Started | standard-4.0.1 | Provide OSGi ConfigAdmin support
diagnostic | 4.0.1 | x |
Started | standard-4.0.1 | Provide Diagnostic support
instance | 4.0.1 | x
| Started | standard-4.0.1 | Provide Instance support
jaas | 4.0.1 | x
| Started | standard-4.0.1 | Provide JAAS support
log | 4.0.1 | x
| Started | standard-4.0.1 | Provide Log support
package | 4.0.1 | x
| Started | standard-4.0.1 | Package commands and mbeans
service | 4.0.1 | x
| Started | standard-4.0.1 | Provide Service support
system | 4.0.1 | x
| Started | standard-4.0.1 | Provide System support
kar | 4.0.1 | x
| Started | standard-4.0.1 | Provide KAR (KARaf archive)
support
ssh | 4.0.1 | x
| Started | standard-4.0.1 | Provide a SSHd server on Karaf
management | 4.0.1 | x |
Started | standard-4.0.1 | Provide a JMX MBeanServer and a set
of MBeans in
wrap | 0.0.0 | x
| Started | standard-4.0.1 | Wrap URL handler
spring-dm | 1.2.1 | |
Started | spring-4.0.1 | Spring DM support
spring | 3.2.14.RELEASE_1 | |
Started | spring-4.0.1 | Spring 3.2.x support
spring-tx | 3.2.14.RELEASE_1 | |
Started | spring-4.0.1 | Spring 3.2.x Transaction (TX) support
* In this simplified example, I don’t get any of the specified camel features
installed even when I specified it in my feature xml.
Thanks and regards,
Ravi Nallappan