<?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.5-SNAPSHOT</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> |