xref: /aosp_15_r20/external/jacoco/org.jacoco.agent.rt/pom.xml (revision 7e63c1270baf9bfa84f5b6aecf17bd0c1a75af94)
1<?xml version="1.0" encoding="UTF-8"?>
2<!--
3   Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors
4   This program and the accompanying materials are made available under
5   the terms of the Eclipse Public License 2.0 which is available at
6   http://www.eclipse.org/legal/epl-2.0
7
8   SPDX-License-Identifier: EPL-2.0
9
10   Contributors:
11      Evgeny Mandrikov - initial API and implementation
12-->
13<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  <modelVersion>4.0.0</modelVersion>
15
16  <parent>
17    <groupId>org.jacoco</groupId>
18    <artifactId>org.jacoco.build</artifactId>
19    <version>0.8.7</version>
20    <relativePath>../org.jacoco.build</relativePath>
21  </parent>
22
23  <artifactId>org.jacoco.agent.rt</artifactId>
24  <!-- do not set packaging to eclipse-plugin, because otherwise maven-shade-plugin will not work -->
25
26  <name>JaCoCo :: Agent RT</name>
27  <description>JaCoCo Java Agent</description>
28
29  <properties>
30    <maven.deploy.skip>true</maven.deploy.skip>
31    <maven.javadoc.skip>true</maven.javadoc.skip>
32  </properties>
33
34  <dependencies>
35    <dependency>
36      <groupId>${project.groupId}</groupId>
37      <artifactId>org.jacoco.core</artifactId>
38    </dependency>
39  </dependencies>
40
41  <build>
42    <sourceDirectory>src</sourceDirectory>
43
44    <plugins>
45      <plugin>
46        <groupId>org.apache.maven.plugins</groupId>
47        <artifactId>maven-shade-plugin</artifactId>
48        <executions>
49          <execution>
50            <phase>package</phase>
51            <goals>
52              <goal>shade</goal>
53            </goals>
54            <configuration>
55              <shadedArtifactAttached>true</shadedArtifactAttached>
56              <shadedClassifierName>all</shadedClassifierName>
57              <minimizeJar>true</minimizeJar>
58              <relocations>
59                <relocation>
60                  <pattern>org.jacoco.agent.rt.internal</pattern>
61                  <shadedPattern>${jacoco.runtime.package.name}</shadedPattern>
62                </relocation>
63                <relocation>
64                  <pattern>org.jacoco.core</pattern>
65                  <shadedPattern>${jacoco.runtime.package.name}.core</shadedPattern>
66                </relocation>
67                <relocation>
68                  <pattern>org.objectweb.asm</pattern>
69                  <shadedPattern>${jacoco.runtime.package.name}.asm</shadedPattern>
70                </relocation>
71              </relocations>
72              <filters>
73                <filter>
74                  <artifact>org.ow2.asm:*</artifact>
75                  <excludes>
76                    <exclude>module-info.class</exclude>
77                  </excludes>
78                </filter>
79              </filters>
80              <transformers>
81                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
82                  <manifestEntries>
83                    <Premain-Class>${jacoco.runtime.package.name}.PreMain</Premain-Class>
84                    <Automatic-Module-Name>${project.artifactId}</Automatic-Module-Name>
85                    <Implementation-Title>${project.description}</Implementation-Title>
86                    <Implementation-Vendor>${project.organization.name}</Implementation-Vendor>
87                    <Implementation-Version>${project.version}</Implementation-Version>
88                  </manifestEntries>
89                </transformer>
90              </transformers>
91            </configuration>
92          </execution>
93        </executions>
94      </plugin>
95    </plugins>
96  </build>
97</project>
98