1*7e63c127SSorin Basca<?xml version="1.0" encoding="UTF-8"?> 2*7e63c127SSorin Basca<!-- 3*7e63c127SSorin Basca Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors 4*7e63c127SSorin Basca This program and the accompanying materials are made available under 5*7e63c127SSorin Basca the terms of the Eclipse Public License 2.0 which is available at 6*7e63c127SSorin Basca http://www.eclipse.org/legal/epl-2.0 7*7e63c127SSorin Basca 8*7e63c127SSorin Basca SPDX-License-Identifier: EPL-2.0 9*7e63c127SSorin Basca 10*7e63c127SSorin Basca Contributors: 11*7e63c127SSorin Basca Evgeny Mandrikov - initial API and implementation 12*7e63c127SSorin Basca--> 13*7e63c127SSorin Basca<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/maven-v4_0_0.xsd"> 14*7e63c127SSorin Basca <modelVersion>4.0.0</modelVersion> 15*7e63c127SSorin Basca 16*7e63c127SSorin Basca <parent> 17*7e63c127SSorin Basca <groupId>org.jacoco</groupId> 18*7e63c127SSorin Basca <artifactId>org.jacoco.build</artifactId> 19*7e63c127SSorin Basca <version>0.8.7</version> 20*7e63c127SSorin Basca <relativePath>../org.jacoco.build</relativePath> 21*7e63c127SSorin Basca </parent> 22*7e63c127SSorin Basca 23*7e63c127SSorin Basca <artifactId>org.jacoco.ant</artifactId> 24*7e63c127SSorin Basca 25*7e63c127SSorin Basca <name>JaCoCo :: Ant</name> 26*7e63c127SSorin Basca <description>JaCoCo Ant Tasks</description> 27*7e63c127SSorin Basca 28*7e63c127SSorin Basca <dependencies> 29*7e63c127SSorin Basca <dependency> 30*7e63c127SSorin Basca <groupId>${project.groupId}</groupId> 31*7e63c127SSorin Basca <artifactId>org.jacoco.core</artifactId> 32*7e63c127SSorin Basca </dependency> 33*7e63c127SSorin Basca <dependency> 34*7e63c127SSorin Basca <groupId>${project.groupId}</groupId> 35*7e63c127SSorin Basca <artifactId>org.jacoco.report</artifactId> 36*7e63c127SSorin Basca </dependency> 37*7e63c127SSorin Basca <dependency> 38*7e63c127SSorin Basca <groupId>${project.groupId}</groupId> 39*7e63c127SSorin Basca <artifactId>org.jacoco.agent</artifactId> 40*7e63c127SSorin Basca </dependency> 41*7e63c127SSorin Basca <dependency> 42*7e63c127SSorin Basca <groupId>org.apache.ant</groupId> 43*7e63c127SSorin Basca <artifactId>ant</artifactId> 44*7e63c127SSorin Basca <scope>provided</scope> 45*7e63c127SSorin Basca </dependency> 46*7e63c127SSorin Basca </dependencies> 47*7e63c127SSorin Basca 48*7e63c127SSorin Basca <build> 49*7e63c127SSorin Basca <sourceDirectory>src</sourceDirectory> 50*7e63c127SSorin Basca 51*7e63c127SSorin Basca <plugins> 52*7e63c127SSorin Basca <plugin> 53*7e63c127SSorin Basca <groupId>org.apache.maven.plugins</groupId> 54*7e63c127SSorin Basca <artifactId>maven-shade-plugin</artifactId> 55*7e63c127SSorin Basca <executions> 56*7e63c127SSorin Basca <execution> 57*7e63c127SSorin Basca <phase>package</phase> 58*7e63c127SSorin Basca <goals> 59*7e63c127SSorin Basca <goal>shade</goal> 60*7e63c127SSorin Basca </goals> 61*7e63c127SSorin Basca <configuration> 62*7e63c127SSorin Basca <shadedArtifactAttached>true</shadedArtifactAttached> 63*7e63c127SSorin Basca <shadedClassifierName>nodeps</shadedClassifierName> 64*7e63c127SSorin Basca <minimizeJar>true</minimizeJar> 65*7e63c127SSorin Basca <relocations> 66*7e63c127SSorin Basca <relocation> 67*7e63c127SSorin Basca <pattern>org.objectweb.asm</pattern> 68*7e63c127SSorin Basca <shadedPattern>org.jacoco.asm</shadedPattern> 69*7e63c127SSorin Basca </relocation> 70*7e63c127SSorin Basca </relocations> 71*7e63c127SSorin Basca <filters> 72*7e63c127SSorin Basca <filter> 73*7e63c127SSorin Basca <artifact>org.ow2.asm:*</artifact> 74*7e63c127SSorin Basca <excludes> 75*7e63c127SSorin Basca <exclude>module-info.class</exclude> 76*7e63c127SSorin Basca </excludes> 77*7e63c127SSorin Basca </filter> 78*7e63c127SSorin Basca </filters> 79*7e63c127SSorin Basca <transformers> 80*7e63c127SSorin Basca <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> 81*7e63c127SSorin Basca <manifestEntries> 82*7e63c127SSorin Basca <Implementation-Title>${project.description}</Implementation-Title> 83*7e63c127SSorin Basca <Implementation-Vendor>${project.organization.name}</Implementation-Vendor> 84*7e63c127SSorin Basca <Implementation-Version>${project.version}</Implementation-Version> 85*7e63c127SSorin Basca </manifestEntries> 86*7e63c127SSorin Basca </transformer> 87*7e63c127SSorin Basca </transformers> 88*7e63c127SSorin Basca </configuration> 89*7e63c127SSorin Basca </execution> 90*7e63c127SSorin Basca </executions> 91*7e63c127SSorin Basca </plugin> 92*7e63c127SSorin Basca 93*7e63c127SSorin Basca <plugin> 94*7e63c127SSorin Basca <groupId>org.apache.felix</groupId> 95*7e63c127SSorin Basca <artifactId>maven-bundle-plugin</artifactId> 96*7e63c127SSorin Basca <executions> 97*7e63c127SSorin Basca <execution> 98*7e63c127SSorin Basca <!-- 99*7e63c127SSorin Basca None of resource tranformers from maven-shade-plugin 100*7e63c127SSorin Basca (including combination of DontIncludeResourceTransformer and ManifestResourceTransformer) 101*7e63c127SSorin Basca does not allow us to leave only desired entries and remove others from META-INF/MANIFEST.MF 102*7e63c127SSorin Basca So we use goal "bundle" instead of "manifest". 103*7e63c127SSorin Basca This introduces some redundant operations, but their cost is negligible. 104*7e63c127SSorin Basca --> 105*7e63c127SSorin Basca <phase>package</phase> 106*7e63c127SSorin Basca <goals> 107*7e63c127SSorin Basca <goal>bundle</goal> 108*7e63c127SSorin Basca </goals> 109*7e63c127SSorin Basca <configuration> 110*7e63c127SSorin Basca <excludeDependencies>true</excludeDependencies> 111*7e63c127SSorin Basca <instructions> 112*7e63c127SSorin Basca <Require-Bundle>org.apache.ant;bundle-version="[1.7.0,2.0.0)"</Require-Bundle> 113*7e63c127SSorin Basca </instructions> 114*7e63c127SSorin Basca </configuration> 115*7e63c127SSorin Basca </execution> 116*7e63c127SSorin Basca </executions> 117*7e63c127SSorin Basca </plugin> 118*7e63c127SSorin Basca </plugins> 119*7e63c127SSorin Basca </build> 120*7e63c127SSorin Basca</project> 121