This is an automated email from the ASF dual-hosted git repository. jbonofre pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/karaf.git
The following commit(s) were added to refs/heads/main by this push: new c42b065 [KARAF-6703] Add specs features repo new b82205e Merge pull request #1281 from jbonofre/KARAF-6703 c42b065 is described below commit c42b0654be99dd1a11c520a0f520a26fd463f6ac Author: jbonofre <jbono...@apache.org> AuthorDate: Thu Dec 24 06:16:42 2020 +0100 [KARAF-6703] Add specs features repo --- assemblies/apache-karaf-minimal/pom.xml | 7 + assemblies/apache-karaf/pom.xml | 7 + assemblies/features/enterprise/pom.xml | 1 + .../enterprise/src/main/feature/feature.xml | 4 +- assemblies/features/pom.xml | 1 + .../specs}/pom.xml | 122 +++++--------- .../features/specs/src/main/feature/feature.xml | 176 +++++++++++++++++++++ bom/pom.xml | 49 ++++++ .../karaf/itests/features/SpecsFeaturesTest.java | 128 +++++++++++++++ pom.xml | 8 + 10 files changed, 417 insertions(+), 86 deletions(-) diff --git a/assemblies/apache-karaf-minimal/pom.xml b/assemblies/apache-karaf-minimal/pom.xml index 05534ec..8c8f007 100644 --- a/assemblies/apache-karaf-minimal/pom.xml +++ b/assemblies/apache-karaf-minimal/pom.xml @@ -71,6 +71,13 @@ </dependency> <dependency> <groupId>org.apache.karaf.features</groupId> + <artifactId>specs</artifactId> + <classifier>features</classifier> + <type>xml</type> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.karaf.features</groupId> <artifactId>spring</artifactId> <classifier>features</classifier> <type>xml</type> diff --git a/assemblies/apache-karaf/pom.xml b/assemblies/apache-karaf/pom.xml index 9c03580..bf2f077 100644 --- a/assemblies/apache-karaf/pom.xml +++ b/assemblies/apache-karaf/pom.xml @@ -70,6 +70,13 @@ </dependency> <dependency> <groupId>org.apache.karaf.features</groupId> + <artifactId>specs</artifactId> + <classifier>features</classifier> + <type>xml</type> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.karaf.features</groupId> <artifactId>spring</artifactId> <classifier>features</classifier> <type>xml</type> diff --git a/assemblies/features/enterprise/pom.xml b/assemblies/features/enterprise/pom.xml index 9a399e9..5efe6ee 100644 --- a/assemblies/features/enterprise/pom.xml +++ b/assemblies/features/enterprise/pom.xml @@ -237,6 +237,7 @@ <configuration> <descriptors> <descriptor>mvn:org.apache.karaf.features/framework/${project.version}/xml/features</descriptor> + <descriptor>mvn:org.apache.karaf.features/specs/${project.version}/xml/features</descriptor> <descriptor>file:${project.build.directory}/feature/feature.xml</descriptor> </descriptors> <distribution>org.apache.karaf.features:framework</distribution> diff --git a/assemblies/features/enterprise/src/main/feature/feature.xml b/assemblies/features/enterprise/src/main/feature/feature.xml index 34f7666..2706c50 100644 --- a/assemblies/features/enterprise/src/main/feature/feature.xml +++ b/assemblies/features/enterprise/src/main/feature/feature.xml @@ -274,9 +274,7 @@ com.atomikos.icatch.log_base_dir=${karaf.data}/atomikos <feature name="docker" description="Docker service and commands" version="${project.version}"> <details>Docker support providing service, commands, and MBean.</details> - <bundle dependency="true">mvn:com.fasterxml.jackson.core/jackson-core/${jackson.version}</bundle> - <bundle dependency="true">mvn:com.fasterxml.jackson.core/jackson-annotations/${jackson.version}</bundle> - <bundle dependency="true">mvn:com.fasterxml.jackson.core/jackson-databind/${jackson.version}</bundle> + <feature>jackson</feature> <bundle>mvn:org.apache.karaf.docker/org.apache.karaf.docker.core/${project.version}</bundle> </feature> diff --git a/assemblies/features/pom.xml b/assemblies/features/pom.xml index 956c777..c73c4ab 100644 --- a/assemblies/features/pom.xml +++ b/assemblies/features/pom.xml @@ -37,6 +37,7 @@ <module>base</module> <module>framework</module> <module>static</module> + <module>specs</module> <module>standard</module> <module>spring</module> <module>spring-legacy</module> diff --git a/assemblies/apache-karaf-minimal/pom.xml b/assemblies/features/specs/pom.xml similarity index 51% copy from assemblies/apache-karaf-minimal/pom.xml copy to assemblies/features/specs/pom.xml index 05534ec..9230aa5 100644 --- a/assemblies/apache-karaf-minimal/pom.xml +++ b/assemblies/features/specs/pom.xml @@ -22,19 +22,20 @@ <modelVersion>4.0.0</modelVersion> <parent> - <groupId>org.apache.karaf.assemblies</groupId> - <artifactId>assemblies</artifactId> + <groupId>org.apache.karaf.assemblies.features</groupId> + <artifactId>features</artifactId> <version>4.3.3-SNAPSHOT</version> <relativePath>../pom.xml</relativePath> </parent> - <groupId>org.apache.karaf</groupId> - <artifactId>apache-karaf-minimal</artifactId> + <groupId>org.apache.karaf.features</groupId> + <artifactId>specs</artifactId> <packaging>pom</packaging> - <name>Apache Karaf :: Assemblies :: Minimal Distribution</name> + <name>Apache Karaf :: Assemblies :: Features :: Specs</name> + <description>Specs Support</description> <properties> - <appendedResourcesDirectory>${basedir}/../etc/appended-resources</appendedResourcesDirectory> + <appendedResourcesDirectory>${basedir}/../../../../etc/appended-resources</appendedResourcesDirectory> </properties> <dependencyManagement> @@ -50,46 +51,21 @@ </dependencyManagement> <dependencies> + <!-- Framework distribution --> <dependency> <groupId>org.apache.karaf.features</groupId> <artifactId>framework</artifactId> <type>kar</type> - </dependency> - <dependency> - <groupId>org.apache.karaf.features</groupId> - <artifactId>framework</artifactId> - <classifier>features</classifier> - <type>xml</type> - <scope>runtime</scope> - </dependency> - <dependency> - <groupId>org.apache.karaf.features</groupId> - <artifactId>standard</artifactId> - <classifier>features</classifier> - <type>xml</type> - <scope>runtime</scope> - </dependency> - <dependency> - <groupId>org.apache.karaf.features</groupId> - <artifactId>spring</artifactId> - <classifier>features</classifier> - <type>xml</type> - <scope>runtime</scope> + <scope>provided</scope> </dependency> </dependencies> <build> <resources> <resource> - <directory>${project.basedir}/../..</directory> - <filtering>false</filtering> - <includes> - <include>README.md</include> - <include>BUILDING.md</include> - <include>RELEASE*</include> - <include>LICENSE</include> - <include>NOTICE</include> - </includes> + <directory>${project.basedir}/src/main/feature</directory> + <filtering>true</filtering> + <targetPath>${project.build.directory}/feature</targetPath> </resource> </resources> <plugins> @@ -98,7 +74,6 @@ <artifactId>maven-resources-plugin</artifactId> <executions> <execution> - <id>process-resources</id> <goals> <goal>resources</goal> </goals> @@ -106,62 +81,47 @@ </executions> </plugin> <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-remote-resources-plugin</artifactId> - <configuration> - <skip>true</skip> - </configuration> - </plugin> - <plugin> <groupId>org.apache.karaf.tooling</groupId> <artifactId>karaf-maven-plugin</artifactId> <executions> <execution> - <id>process-resources</id> + <id>verify</id> <phase>process-resources</phase> <goals> - <goal>assembly</goal> - </goals> - </execution> - <execution> - <id>package</id> - <goals> - <goal>archive</goal> + <goal>verify</goal> </goals> + <configuration> + <descriptors> + <descriptor>mvn:org.apache.karaf.features/framework/${project.version}/xml/features</descriptor> + <descriptor>file:${project.build.directory}/feature/feature.xml</descriptor> + </descriptors> + <distribution>org.apache.karaf.features:framework</distribution> + <javase>9</javase> + <framework> + <feature>framework</feature> + </framework> + </configuration> </execution> </executions> - <configuration> - <bootFeatures> - <feature>jaas</feature> - <feature>shell</feature> - <feature>feature</feature> - <feature>ssh</feature> - <feature>bundle</feature> - <feature>config</feature> - <feature>log</feature> - </bootFeatures> - <pidsToExtract> - !jmx.acl.*, - !org.apache.karaf.command.acl.*, - * - </pidsToExtract> - <javase>1.8</javase> - </configuration> </plugin> <plugin> - <artifactId>maven-antrun-plugin</artifactId> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> <executions> <execution> - <id>fix-distro</id> - <phase>prepare-package</phase> + <id>attach-artifacts</id> + <phase>package</phase> <goals> - <goal>run</goal> + <goal>attach-artifact</goal> </goals> <configuration> - <target> - <delete dir="${project.build.directory}/assembly/system/org/eclipse" /> - <delete dir="${project.build.directory}/assembly/system/org/ops4j/pax/logging/pax-logging-logback" /> - </target> + <artifacts> + <artifact> + <file>target/feature/feature.xml</file> + <classifier>features</classifier> + <type>xml</type> + </artifact> + </artifacts> </configuration> </execution> </executions> @@ -179,11 +139,7 @@ <artifactId>karaf-maven-plugin</artifactId> <executions> <execution> - <id>process-resources</id> - <phase>none</phase> - </execution> - <execution> - <id>package</id> + <id>verify</id> <phase>none</phase> </execution> </executions> @@ -193,4 +149,4 @@ </profile> </profiles> -</project> +</project> \ No newline at end of file diff --git a/assemblies/features/specs/src/main/feature/feature.xml b/assemblies/features/specs/src/main/feature/feature.xml new file mode 100644 index 0000000..a2bb1c6 --- /dev/null +++ b/assemblies/features/specs/src/main/feature/feature.xml @@ -0,0 +1,176 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes"?> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<features name="specs-${project.version}" 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"> + + <!-- asm --> + <feature name="asm" version="${asm.version}"> + <bundle dependency="false" start-level="20">mvn:org.ow2.asm/asm/${asm.version}</bundle> + <bundle dependency="false" start-level="20">mvn:org.ow2.asm/asm-util/${asm.version}</bundle> + <bundle dependency="false" start-level="20">mvn:org.ow2.asm/asm-tree/${asm.version}</bundle> + <bundle dependency="false" start-level="20">mvn:org.ow2.asm/asm-analysis/${asm.version}</bundle> + <bundle dependency="false" start-level="20">mvn:org.ow2.asm/asm-commons/${asm.version}</bundle> + </feature> + + <!-- spifly --> + <feature name="spifly" version="${aries.spifly.version}"> + <feature>asm</feature> + <bundle>mvn:org.apache.aries.spifly/org.apache.aries.spifly.dynamic.bundle/${aries.spifly.version}</bundle> + </feature> + + <!-- annotation --> + <feature name="jakarta.annotation" version="${spec.annotation.version}"> + <bundle start-level="10" dependency="true">mvn:jakarta.annotation/jakarta.annotation-api/${spec.annotation.version}</bundle> + </feature> + + <!-- activation --> + <feature name="activation" version="${spec.activation.version}"> + <bundle start-level="10" dependency="true">mvn:com.sun.activation/jakarta.activation/${spec.activation.version}</bundle> + </feature> + + <!-- jaxb --> + <feature name="jaxb" version="${spec.jaxb.version}"> + <bundle start-level="20" dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jaxb-runtime/${spec.jaxb.version}</bundle> + <bundle start-level="20" dependency="true">mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.jaxb-xjc/${spec.jaxb.version}</bundle> + </feature> + + <!-- jws --> + <feature name="jws" version="${spec.jws.version}"> + <bundle start-level="10" dependency="true">mvn:jakarta.jws/jakarta.jws-api/${spec.jws.version}</bundle> + </feature> + + <!-- jaxrs --> + <feature name="jaxrs" version="${spec.jaxrs.version}"> + <bundle start-level="10" dependency="true">mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxrs-api-2.1/2.9.1</bundle> + </feature> + + <!-- jaxws --> + <feature name="jaxws" version="${spec.jaxws.version}"> + <bundle dependency="true">mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.jaxws-api-2.3/2.3_2</bundle> + </feature> + + <!-- mail --> + <feature name="mail" version="${spec.mail.version}"> + <bundle start-level="10" dependency="true">mvn:jakarta.mail/jakarta.mail-api/${spec.mail.version}</bundle> + </feature> + + <!-- jackson --> + <feature name="jackson" version="${jackson.version}"> + <bundle start-level="35">mvn:com.fasterxml.jackson.core/jackson-core/${jackson.version}</bundle> + <bundle start-level="35">mvn:com.fasterxml.jackson.core/jackson-annotations/${jackson.version}</bundle> + <bundle start-level="35">mvn:com.fasterxml.jackson.core/jackson-databind/${jackson.version}</bundle> + </feature> + + <feature name="jackson-jaxrs" version="${jackson.version}"> + <feature>jackson</feature> + <feature>jaxrs</feature> + <feature>jakarta.annotation</feature> + <bundle start-level="35">mvn:org.yaml/snakeyaml/1.26</bundle> + <bundle start-level="35">mvn:com.fasterxml.jackson.dataformat/jackson-dataformat-yaml/${jackson.version}</bundle> + <bundle start-level="35">mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-base/${jackson.version}</bundle> + <bundle start-level="35">mvn:com.fasterxml.jackson.jaxrs/jackson-jaxrs-json-provider/${jackson.version}</bundle> + </feature> + + <!-- stax --> + <feature name="stax" version="1.0"> + <bundle start-level="10" dependency="true">mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.stax-api-1.0/2.9.0</bundle> + </feature> + + <!-- stax2 --> + <feature name="stax2" version="4.2"> + <bundle>mvn:org.codehaus.woodstox/stax2-api/4.2</bundle> + <bundle>mvn:com.fasterxml.woodstox/woodstox-core/6.2.4</bundle> + </feature> + + <!-- saaj --> + <feature name="saaj" version="1.4"> + <bundle start-level="10" dependency="true">mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.saaj-api-1.4/1.4_1</bundle> + </feature> + + <!-- namespace --> + <feature name="namespace" version="1.0.0"> + <bundle>mvn:org.osgi/org.osgi.namespace.service/1.0.0</bundle> + <bundle>mvn:org.osgi/org.osgi.namespace.implementation/1.0.0</bundle> + <bundle>mvn:org.osgi/org.osgi.namespace.extender/1.0.1</bundle> + </feature> + + <!-- util --> + <feature name="util" version="1.1.0"> + <bundle dependency="true">mvn:org.osgi/org.osgi.util.function/1.1.0</bundle> + <bundle dependency="true">mvn:org.osgi/org.osgi.util.promise/1.1.0</bundle> + </feature> + + <!-- xbean --> + <feature name="xbean" version="${xbean.version}"> + <bundle>mvn:org.apache.xbean/xbean-bundleutils/${xbean.version}</bundle> + <bundle>mvn:org.apache.xbean/xbean-asm9-shaded/${xbean.version}</bundle> + <bundle>mvn:org.apache.xbean/xbean-finder-shaded/${xbean.version}</bundle> + </feature> + + <!-- converter --> + <feature name="converter" version="${felix.converter.version}"> + <bundle>mvn:org.apache.felix/org.apache.felix.converter/${felix.converter.version}</bundle> + </feature> + + <!-- cdi --> + <feature name="cdi" version="1.1.3"> + <feature prerequisite="true">spifly</feature> + <bundle dependency="true">mvn:org.apache.servicemix.specs/org.apache.servicemix.specs.annotation-api-1.3/1.3_3</bundle> + <bundle>mvn:org.apache.xbean/xbean-bundleutils/4.17</bundle> + <bundle>mvn:org.apache.xbean/xbean-asm8-shaded/4.17</bundle> + <bundle>mvn:org.apache.xbean/xbean-finder-shaded/4.17</bundle> + <bundle>mvn:org.apache.geronimo.specs/geronimo-atinject_1.0_spec/1.2</bundle> + <bundle>mvn:org.apache.geronimo.specs/geronimo-interceptor_1.2_spec/1.2</bundle> + <bundle>mvn:org.apache.geronimo.specs/geronimo-el_2.2_spec/1.1</bundle> + <bundle>mvn:org.apache.geronimo.specs/geronimo-jcdi_2.0_spec/1.2</bundle> + <bundle>mvn:org.osgi/org.osgi.service.cdi/1.0.0</bundle> + <bundle>mvn:org.apache.openwebbeans/openwebbeans-spi/2.0.17</bundle> + <bundle>mvn:org.apache.openwebbeans/openwebbeans-impl/2.0.17</bundle> + <bundle>mvn:org.apache.aries.cdi/org.apache.aries.cdi.spi/1.1.3</bundle> + <bundle>mvn:org.apache.aries.cdi/org.apache.aries.cdi.owb/1.1.3</bundle> + <bundle start="true">mvn:org.apache.aries.cdi/org.apache.aries.cdi.extension.spi/1.1.3</bundle> + <bundle start="true">mvn:org.apache.aries.cdi/org.apache.aries.cdi.extender/1.1.3</bundle> + </feature> + + <!-- groovy --> + <feature name="groovy" version="3.0.3"> + <feature prerequisite="true">spifly</feature> + <bundle>mvn:org.codehaus.groovy/groovy/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-ant/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-cli-commons/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-cli-picocli/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-console/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-datetime/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-docgenerator/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-groovydoc/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-groovysh/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-jmx/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-json/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-macro/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-nio/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-servlet/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-sql/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-swing/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-templates/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-test/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-test-junit5/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-testng/3.0.3</bundle> + <bundle>mvn:org.codehaus.groovy/groovy-xml/3.0.3</bundle> + </feature> + +</features> \ No newline at end of file diff --git a/bom/pom.xml b/bom/pom.xml index 02e3d31..7ecb6d4 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -464,6 +464,13 @@ </dependency> <dependency> <groupId>org.apache.karaf.features</groupId> + <artifactId>specs</artifactId> + <type>xml</type> + <classifier>features</classifier> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>org.apache.karaf.features</groupId> <artifactId>spring</artifactId> <type>xml</type> <classifier>features</classifier> @@ -1466,6 +1473,48 @@ <artifactId>istack-commons-runtime</artifactId> <version>3.0.10</version> </dependency> + + <!-- specs --> + <dependency> + <groupId>jakarta.activation</groupId> + <artifactId>jakarta.activation-api</artifactId> + <version>${spec.activation.version}</version> + </dependency> + <dependency> + <groupId>jakarta.annotation</groupId> + <artifactId>jakarta.annotation-api</artifactId> + <version>${spec.annotation.version}</version> + </dependency> + <dependency> + <groupId>org.apache.servicemix.bundles</groupId> + <artifactId>org.apache.servicemix.bundles.jaxb-runtime</artifactId> + <version>${spec.jaxb.version}</version> + </dependency> + <dependency> + <groupId>org.apache.servicemix.bundles</groupId> + <artifactId>org.apache.servicemix.bundles.jaxb-xjc</artifactId> + <version>${spec.jaxb.version}</version> + </dependency> + <dependency> + <groupId>org.apache.servicemix.specs</groupId> + <artifactId>org.apache.servicemix.specs.jaxrs-api-2.1</artifactId> + <version>2.9.1</version> + </dependency> + <dependency> + <groupId>org.apache.servicemix.specs</groupId> + <artifactId>org.apache.servicemix.specs.jaxws-api-2.3</artifactId> + <version>2.3_2</version> + </dependency> + <dependency> + <groupId>jakarta.jws</groupId> + <artifactId>jakarta.jws-api</artifactId> + <version>${spec.jws.version}</version> + </dependency> + <dependency> + <groupId>jakarta.mail</groupId> + <artifactId>jakarta.mail-api</artifactId> + <version>${spec.mail.version}</version> + </dependency> </dependencies> </dependencyManagement> diff --git a/itests/test/src/test/java/org/apache/karaf/itests/features/SpecsFeaturesTest.java b/itests/test/src/test/java/org/apache/karaf/itests/features/SpecsFeaturesTest.java new file mode 100644 index 0000000..0b0cc83 --- /dev/null +++ b/itests/test/src/test/java/org/apache/karaf/itests/features/SpecsFeaturesTest.java @@ -0,0 +1,128 @@ +/* + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.karaf.itests.features; + +import org.apache.karaf.itests.BaseTest; +import org.junit.Ignore; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.ops4j.pax.exam.junit.PaxExam; +import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy; +import org.ops4j.pax.exam.spi.reactors.PerClass; + +@RunWith(PaxExam.class) +@ExamReactorStrategy(PerClass.class) +public class SpecsFeaturesTest extends BaseTest { + + @Test + public void installAsmFeature() throws Exception { + installAssertAndUninstallFeatures("asm"); + } + + @Test + public void installSpiflyFeature() throws Exception { + installAssertAndUninstallFeatures("spifly"); + } + + @Test + public void installJakartaAnnotationFeature() throws Exception { + installAssertAndUninstallFeatures("jakarta.annotation"); + } + + @Test + public void installActivationFeature() throws Exception { + installAssertAndUninstallFeatures("activation"); + } + + @Test + public void installJaxbFeature() throws Exception { + installAssertAndUninstallFeatures("jaxb"); + } + + @Test + public void installJwsFeature() throws Exception { + installAssertAndUninstallFeatures("jws"); + } + + @Test + public void installJaxrsFeature() throws Exception { + installAssertAndUninstallFeatures("jaxrs"); + } + + @Test + public void installJaxwsFeature() throws Exception { + installAssertAndUninstallFeatures("jaxws"); + } + + @Test + public void installMailFeature() throws Exception { + installAssertAndUninstallFeatures("mail"); + } + + @Test + public void installJacksonFeature() throws Exception { + installAssertAndUninstallFeatures("jackson"); + } + + @Test + public void installJacksonJaxrsFeature() throws Exception { + installAssertAndUninstallFeatures("jackson-jaxrs"); + } + + @Test + public void installStaxFeature() throws Exception { + installAssertAndUninstallFeatures("stax"); + } + + @Test + public void installStax2Feature() throws Exception { + installAssertAndUninstallFeatures("stax2"); + } + + @Test + public void installSaajFeature() throws Exception { + installAssertAndUninstallFeatures("saaj"); + } + + @Test + public void installNamespaceFeature() throws Exception { + installAssertAndUninstallFeatures("namespace"); + } + + @Test + public void installUtilFeature() throws Exception { + installAssertAndUninstallFeatures("util"); + } + + @Test + public void installCdiFeature() throws Exception { + installAssertAndUninstallFeatures("cdi"); + } + + @Test + public void installConverterFeature() throws Exception { + installAssertAndUninstallFeatures("converter"); + } + + @Test + public void installXBeanFeature() throws Exception { + installAssertAndUninstallFeatures("xbean"); + } + + @Test + public void installGroovyFeature() throws Exception { + installAssertAndUninstallFeatures("groovy"); + } + +} diff --git a/pom.xml b/pom.xml index 5a13fc3..9b97200 100644 --- a/pom.xml +++ b/pom.xml @@ -308,6 +308,14 @@ <plexus-utils.version>3.2.1</plexus-utils.version> <slf4j.version>1.7.32</slf4j.version> + <spec.activation.version>1.2.2</spec.activation.version> + <spec.annotation.version>1.3.5</spec.annotation.version> + <spec.jaxb.version>2.3.2_1</spec.jaxb.version> + <spec.jaxrs.version>2.1</spec.jaxrs.version> + <spec.jaxws.version>2.3</spec.jaxws.version> + <spec.jws.version>1.1.1</spec.jws.version> + <spec.mail.version>1.6.5</spec.mail.version> + <spring.osgi.version>1.2.1</spring.osgi.version> <spring31.version>3.1.4.RELEASE</spring31.version> <spring43.version>4.3.30.RELEASE_1</spring43.version>