I have included both below but a number of the bundles are particular to my
build but for the spring feature only enroute bundles cant be downloaded
from maven

<features name="aardvark"  xmlns="
http://karaf.apache.org/xmlns/features/v1.3.0";
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
    xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.3.0
http://karaf.apache.org/xmlns/features/v1.3.0";>
    <feature name="karafcustomplatform" description="Felix Requirements For
AARDVARK" version="1.0.0">
        <feature prerequisite="true">framework</feature>
        <feature prerequisite="true">log</feature>
        <feature prerequisite="true">transaction</feature>
        <feature prerequisite="true">scr</feature>
        <feature prerequisite="true">aries-blueprint</feature>
        <feature prerequisite="true">commons</feature>

<capability>osgi.service;effective:=active;objectClass="org.osgi.service.log.LogService"</capability>

<capability>osgi.wiring.package;effective:=active;osgi.wiring.package="javax.validation";version="1.2"</capability>

<capability>osgi.extender;osgi.extender="osgi.component";version="1.3"</capability>
    </feature>
    <feature name="aardvarkfelixbundles" description="Felix Requirements
For AARDVARK" version="1.0.0">
        <feature prerequisite="true">karafcustomplatform</feature>

<bundle>mvn:org.apache.felix/org.apache.felix.http.servlet-api/${felix.http.servlet-api}</bundle>

<bundle>mvn:org.apache.felix/org.apache.felix.http.api/${felix.http.api.version}</bundle>

<bundle>mvn:org.apache.felix/org.apache.felix.coordinator/${felix.coordinator}</bundle>

<bundle>mvn:org.apache.felix/org.apache.felix.eventadmin/${felix.eventadmin}</bundle>

<bundle>mvn:org.apache.felix/org.apache.felix.metatype/${felix.metatype}</bundle>
    </feature>
    <feature name="aardvarkconfigurerbundles" description="Configuration
Requirements For AARDVARK" version="1.0.0">
        <feature prerequisite="true">aardvarkfelixbundles</feature>

<bundle>mvn:org.osgi/osgi.configurer.provider/${enroute.configurer.provider}</bundle>

<bundle>mvn:osgi.enroute/configurer.simple.provider/${enroute.configurer.simple}</bundle>
    </feature>
    <feature name="aardvarkhttpbundles" description="HTTP Requirements For
AARDVARK" version="1.0.0">
        <feature prerequisite="true">aardvarkconfigurerbundles</feature>

<bundle>mvn:javax.validation/validation-api/${javax.validation}</bundle>

<bundle>mvn:org.apache.felix/org.apache.felix.http.base/${felix.http.base}</bundle>

<bundle>mvn:org.apache.felix/org.apache.felix.http.whiteboard/${felix.http.whiteboard.version}</bundle>

<bundle>mvn:org.apache.felix/org.apache.felix.http.jetty/${felix.http.jetty.version}</bundle>

<bundle>mvn:org.apache.httpcomponents/httpcore-osgi/${httpcore.version}</bundle>

<bundle>mvn:org.apache.httpcomponents/httpclient-osgi/${httpclient.version}</bundle>

<bundle>mvn:osgi.enroute/dto.bndlib.provider/${bndlib.provider.version}</bundle>

<bundle>mvn:osgi.enroute/web.simple.provider/${enroute.web.simple}</bundle>

<bundle>mvn:osgi.enroute/executor.simple.provider/${enroute.executor.provider}</bundle>
    </feature>
    <feature name="aardvarkstreamsbundles" description="Reactive Streams
Requirements For AARDVARK" version="1.0.0">

<bundle>mvn:org.reactivestreams/reactive-streams/${reactivestreams.version}</bundle>

<bundle>mvn:com.orbis.reactiverx/reactiverx-osgi/${reactiverx.version}</bundle>
    </feature>
    <feature name="aardvarkspringbundles" description="Spring Bundles"
version="3.2.16">
        <feature prerequisite="true">aardvarkhttpbundles</feature>

<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.aopalliance/${aopalliance.version}</bundle>

<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-core/${spring.version}</bundle>

<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-expression/${spring.version}</bundle>

<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-beans/${spring.version}</bundle>

<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-aop/${spring.version}</bundle>

<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context/${spring.version}</bundle>

<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context-support/${spring.version}</bundle>

<bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-web/${spring.version}</bundle>
    </feature>
    <feature name="aardvarkhazelcastbundles" description="Hazelcast server
and client" version="3.6.0">
        <feature prerequisite="true">aardvarkhttpbundles</feature>
        <bundle>mvn:com.hazelcast/hazelcast/${hazelcast.version}</bundle>
        <bundle>mvn:com.hazelcast/hazelcast-wm/${hazelcast.version}</bundle>

<bundle>mvn:com.hazelcast/hazelcast-client/${hazelcast.version}</bundle>

<bundle>mvn:org.livetribe/livetribe-jsr223/${livetribe.jsr223}</bundle>
    </feature>
    <feature name="marklogic" description="Marklogic client"
version="8.0.2">
        <feature prerequisite="true">commons</feature>

<bundle>mvn:com.marklogic/marklogic-xcc-osgi/${project.version}</bundle>
    </feature>
    <feature name="commons" description="Apache Commons libraries"
install="auto" version="1.0.0">
        <bundle>mvn:javax.cache/cache-api/${javax.cache.version}</bundle>

<bundle>mvn:commons-codec/commons-codec/${commons-codec.version}</bundle>

<bundle>mvn:org.apache.commons/commons-lang3/${commons-lang3.version}</bundle>

<bundle>mvn:commons-logging/commons-logging/${commons-logging.version}</bundle>

<bundle>mvn:org.apache.commons/commons-collections4/${commons-collection.version}</bundle>
        <bundle>mvn:com.google.code.gson/gson/${gson.version}</bundle>

<bundle>mvn:com.fasterxml.jackson.core/jackson-core/${jackson.version}</bundle>

<bundle>mvn:com.fasterxml.jackson.core/jackson-annotations/${jackson.version}</bundle>

<bundle>mvn:com.fasterxml.jackson.core/jackson-databind/${jackson.version}</bundle>
    </feature>
    <feature name="aardvark" description="AARDVARK Application"
install="auto" version="1.0.0">
        <feature prerequisite="true">commons</feature>
        <feature prerequisite="true">aardvarkfelixbundles</feature>
        <feature prerequisite="true">aardvarkconfigurerbundles</feature>
        <feature prerequisite="true">aardvarkhttpbundles</feature>
        <feature prerequisite="true">jax-rs-connector</feature>
        <feature prerequisite="true">aardvarkstreamsbundles</feature>
        <feature prerequisite="true">aardvarkhazelcastbundles</feature>
        <feature prerequisite="true">marklogic</feature>
        <configfile finalname="/etc/hazelcast.xml">
            mvn:${project.groupId}/cache/${project.version}/cfg/config
        </configfile>
        <configfile finalname="/etc/com.marklogic.cfg">

mvn:${project.groupId}/dcgs.mocks/${project.version}/cfg/mlconfig
        </configfile>
        <bundle
start-level="80">mvn:${project.groupId}/core/${project.version}</bundle>
        <bundle
start-level="85">mvn:${project.groupId}/cache/${project.version}</bundle>
        <bundle
start-level="90">mvn:${project.groupId}/web/${project.version}</bundle>
        <bundle
start-level="95">mvn:${project.groupId}/ozp/${project.version}</bundle>
        <bundle
start-level="100">mvn:${project.groupId}/cta.web/${project.version}</bundle>
        <bundle
start-level="100">mvn:${project.groupId}/dcgs.mocks/${project.version}</bundle>
    </feature>
</features>


<!-- Copyright (c) 2014 Orbis Technologies, Inc. All Rights Reserved -->
<project xmlns="http://maven.apache.org/POM/4.0.0"; xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance";
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>com.orbis.aardvark</groupId>
        <artifactId>project-parent-pom</artifactId>
        <relativePath>../project-parent-pom</relativePath>
        <version>1.0.0</version>
    </parent>

    <artifactId>server-installer</artifactId>
    <name>${project.groupId}:${project.artifactId}</name>
    <description>AARDVARK server installer.</description>
    <packaging>karaf-assembly</packaging>

    <properties>
        <main.basedir>${project.parent.parent.basedir}</main.basedir>
    </properties>
    <organization>
        <name>Orbis Technologies, Inc.</name>
        <url>http://www.orbistechnologies.com/</url>
    </organization>
    <dependencies>
        <dependency>
            <groupId>org.apache.karaf</groupId>
            <artifactId>apache-karaf</artifactId>
            <version>${karaf.version}</version>
            <type>tar.gz</type>
        </dependency>
        <dependency>
            <groupId>org.apache.karaf.features</groupId>
            <artifactId>framework</artifactId>
            <version>${karaf.version}</version>
            <type>kar</type>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.karaf.features</groupId>
            <artifactId>standard</artifactId>
            <version>${karaf.version}</version>
            <classifier>features</classifier>
            <type>xml</type>
        </dependency>
        <dependency>
            <groupId>org.apache.karaf.features</groupId>
            <artifactId>enterprise</artifactId>
            <version>${karaf.version}</version>
            <classifier>features</classifier>
            <type>xml</type>
        </dependency>
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>features</artifactId>
            <version>${project.version}</version>
            <classifier>features</classifier>
            <type>xml</type>
        </dependency>
        <dependency>
            <groupId>com.eclipsesource.jaxrs</groupId>
            <artifactId>features</artifactId>
            <classifier>features</classifier>
            <type>xml</type>
        </dependency>
    </dependencies>
    <build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <includes>
                    <include>**/*</include>
                </includes>
            </resource>
        </resources>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.7</version>
                <executions>
                    <execution>
                        <id>process-resources</id>
                        <goals>
                            <goal>resources</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.karaf.tooling</groupId>
                <artifactId>karaf-maven-plugin</artifactId>
                <extensions>true</extensions>
                <configuration>
                    <javase>1.8</javase>

<distribution>org.apache.karaf.features:framework</distribution>
                    <framework>
                        <feature>framework</feature>
                    </framework>

<installAllFeaturesByDefault>false</installAllFeaturesByDefault>
                    <descriptors>

<descriptor>mvn:org.apache.karaf.features/framework/${karaf.version}/xml/features</descriptor>

<descriptor>mvn:org.apache.karaf.features/standard/${karaf.version}/xml/features</descriptor>

<descriptor>mvn:org.apache.karaf.features/enterprise/${karaf.version}/xml/features</descriptor>

<descriptor>mvn:com.eclipsesource.jaxrs/features/${jax-rs-publisher.version}/xml/features</descriptor>

<descriptor>mvn:${project.groupId}/features/${project.version}/xml/features</descriptor>
                    </descriptors>
                    <startupFeatures>
                        <feature>framework</feature>
                    </startupFeatures>
                    <bootFeatures>
                        <feature>instance</feature>
                        <feature>package</feature>
                        <feature>log</feature>
                        <feature>ssh</feature>
                        <feature>aries-blueprint</feature>
                        <feature>system</feature>
                        <feature>feature</feature>
                        <feature>shell</feature>
                        <feature>management</feature>
                        <feature>service</feature>
                        <feature>jaas</feature>
                        <feature>shell-compat</feature>
                        <feature>deployer</feature>
                        <feature>diagnostic</feature>
                        <feature>wrap</feature>
                        <feature>bundle</feature>
                        <feature>config</feature>
                        <feature>kar</feature>
                        <feature>instance</feature>
                        <feature>scr</feature>
                        <feature>transaction</feature>
                        <feature>commons</feature>
                        <feature>aardvarkfelixbundles</feature>
                        <feature>aardvarkconfigurerbundles</feature>
                        <feature>aardvarkhttpbundles</feature>
                        <feature>aardvarkstreamsbundles</feature>
                        <feature>aardvarkhazelcastbundles</feature>
                        <feature>aardvarkspringbundles</feature>
                        <feature>marklogic</feature>
                        <feature>aardvark</feature>
                    </bootFeatures>
                    <libraries>

<library>mvn:javax.validation/validation-api/1.1.0.Final;type:=default;export:=true</library>
                    </libraries>
                </configuration>
                <executions>
                    <execution>
                        <id>verify</id>
                        <phase>generate-resources</phase>
                        <goals>
                            <goal>verify</goal>
                        </goals>
                        <configuration>
                            <descriptors>
                                <!-- Note that verification (unlike
assembly) needs the framework
                                    features here -->

<descriptor>mvn:org.apache.karaf.features/framework/${karaf.version}/xml/features</descriptor>

<descriptor>mvn:org.apache.karaf.features/standard/${karaf.version}/xml/features</descriptor>

<descriptor>mvn:org.apache.karaf.features/enterprise/${karaf.version}/xml/features</descriptor>

<descriptor>mvn:com.eclipsesource.jaxrs/features/${jax-rs-publisher.version}/xml/features</descriptor>

<descriptor>mvn:${project.groupId}/features/${project.version}/xml/features</descriptor>
                            </descriptors>
                            <features>
                                <feature>framework</feature>
                                <feature>scr</feature>
                                <feature>log</feature>
                                <feature>config</feature>
                                <feature>transaction</feature>
                                <feature>aries-blueprint</feature>
                                <feature>commons</feature>
                                <feature>karafcustomplatform</feature>
                                <feature>aardvarkfelixbundles</feature>
                                <feature>aardvarkconfigurerbundles</feature>
                                <feature>aardvarkhttpbundles</feature>
                                <feature>aardvarkstreamsbundles</feature>
                                <feature>aardvarkspringbundles</feature>
                                <feature>aardvarkhazelcastbundles</feature>
                                <feature>marklogic</feature>
                            </features>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>



On Mon, Apr 18, 2016 at 3:52 PM, Jean-Baptiste Onofré <[email protected]>
wrote:

> Hi David,
>
> would it be possible to share your features XML and the pom that you use
> to create your custom distribution ?
>
> Thanks,
> Regards
> JB
>
>
> On 04/18/2016 09:48 PM, David Daniel wrote:
>
>> When I include the following bundles in a feature
>>
>>
>>
>> mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.aopalliance/1.0_6
>>
>>
>> mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.javax-inject/1_2
>>
>>
>> mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-aop/
>> 3.2.16.RELEASE_1
>>
>>
>> mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-beans/
>> 3.2.16.RELEASE_1
>>
>>
>> mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context-support/3.2.16.RELEASE_1
>>
>>
>> mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-context/
>> 3.2.16.RELEASE_1
>>
>>
>> mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-core/
>> 3.2.16.RELEASE_1
>>
>>
>> mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-expression/3.2.16.RELEASE_1
>>
>>
>> mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.spring-web/
>> 3.2.16.RELEASE_1
>>
>> I get a validation error
>>
>>      at
>> org.apache.karaf.tooling.VerifyMojo.verifyResolution(VerifyMojo.java:411)
>>      at org.apache.karaf.tooling.VerifyMojo.doExecute(VerifyMojo.java:291)
>>      at org.apache.karaf.tooling.VerifyMojo.execute(VerifyMojo.java:174)
>>      at
>>
>> org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
>>      at
>>
>> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
>>      at
>>
>> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
>>      at
>>
>> org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
>>      at
>>
>> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
>>      at
>>
>> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
>>      at
>>
>> org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
>>      at
>>
>> org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
>>      at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
>>      at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
>>      at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
>>      at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
>>      at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
>>      at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
>>      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>      at
>>
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>>      at
>>
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>      at java.lang.reflect.Method.invoke(Method.java:497)
>>      at
>>
>> org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
>>      at
>>
>> org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
>>      at
>>
>> org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
>>      at
>> org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
>> Caused by: java.lang.ClassCastException: java.lang.String cannot be cast
>> to org.osgi.framework.Version
>>      at
>>
>> org.apache.karaf.features.internal.region.CandidateComparator.compare(CandidateComparator.java:77)
>>      at
>>
>> org.apache.karaf.features.internal.region.CandidateComparator.compare(CandidateComparator.java:31)
>>      at java.util.TimSort.countRunAndMakeAscending(TimSort.java:351)
>>      at java.util.TimSort.sort(TimSort.java:216)
>>      at java.util.Arrays.sort(Arrays.java:1512)
>>      at java.util.ArrayList.sort(ArrayList.java:1454)
>>      at java.util.Collections.sort(Collections.java:175)
>>      at
>>
>> org.apache.karaf.features.internal.region.SubsystemResolveContext.findProviders(SubsystemResolveContext.java:260)
>>      at org.apache.felix.resolver.Candidates.populate(Candidates.java:227)
>>      at
>> org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:229)
>>      at
>> org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:158)
>>      at
>>
>> org.apache.karaf.features.internal.region.SubsystemResolver.resolve(SubsystemResolver.java:216)
>>      at
>>
>> org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:263)
>>      at
>> org.apache.karaf.tooling.VerifyMojo.verifyResolution(VerifyMojo.java:396)
>>
>> I am wondering if it is because the spring version has RELEASE_1
>> appended to it.  I was wondering if someone else had this issue and knew
>> how to fix it.  The other option is to include the normal spring-web
>> feature as a prereq but I was not sure how to specify the version range
>> in karaf-maven-plugin
>>
>> Any help is appreciated,
>>    David Daniel
>>
>
> --
> Jean-Baptiste Onofré
> [email protected]
> http://blog.nanthrax.net
> Talend - http://www.talend.com
>

Reply via email to