blob: 1049e73ace908ef9eb851b822c6596ca0fc200c1 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
* 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.
-->
<project>
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache.tuscany.sca</groupId>
<artifactId>tuscany-distribution</artifactId>
<version>2.0</version>
<relativePath>../../pom.xml</relativePath>
</parent>
<groupId>org.apache.tuscany.sca.aggregation</groupId>
<artifactId>tuscany-base-runtime-aggregation</artifactId>
<name>Apache Tuscany SCA Base Runtime Aggregation</name>
<properties>
<bundle-symbolic-name>${project.groupId}.${project.artifactId}</bundle-symbolic-name>
</properties>
<!--
The dependencies required to run the Assembly otests minus the web service
binding (which is only required by the otest framework). Provides a minimum
set of function for running composites using implementation.java and local
wiring. Other extensions can be added to this base when required
-->
<dependencies>
<dependency>
<groupId>org.apache.tuscany.sca</groupId>
<artifactId>tuscany-base-runtime-pom</artifactId>
<version>${project.version}</version>
<type>pom</type>
<optional>true</optional>
<exclusions>
<exclusion>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<!-- shades plugin but not worrying about manifests for the time being -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>1.3.2</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<createSourcesJar>true</createSourcesJar>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
<!--
various different approaches to the problem of building aggregate jars
leaving here for reference while the build settles down
-->
<!-- Our bundle plugin aggregation function
1/ it relies on generating the modules directory (which is not such a big deal)
2/ it generates a bundle with contains jars and a bundle classpath so is not jse friendly.
<plugin>
<groupId>org.apache.tuscany.sca</groupId>
<artifactId>tuscany-bundle-plugin</artifactId>
<version>1.0.8</version>
<executions>
<execution>
<id>distribution-modules</id>
<phase>generate-resources</phase>
<goals>
<goal>generate-modules</goal>
</goals>
<configuration>
<targetDirectory>target/modules</targetDirectory>
</configuration>
</execution>
<execution>
<id>aggregate</id>
<phase>process-resources</phase>
<goals>
<goal>aggregate-modules</goal>
</goals>
</execution>
</executions>
</plugin>
-->
<!-- Using the bundle plugin etc.
Unpack doesn't work with pom dependencies
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack-dependencies</id>
<goals>
<goal>unpack-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/classes</outputDirectory>
<overWriteReleases>false</overWriteReleases>
<overWriteSnapshots>true</overWriteSnapshots>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<executions>
<execution>
<id>bundle-manifest</id>
<phase>process-classes</phase>
<goals>
<goal>manifest</goal>
</goals>
</execution>
</executions>
<configuration>
<instructions>
<Bundle-RequiredExecutionEnvironment>J2SE-1.6</Bundle-RequiredExecutionEnvironment>
</instructions>
</configuration>
</plugin>
-->
</plugins>
</build>
</project>