• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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      Marc R. Hoffmann - 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.cli</artifactId>
24
25  <name>JaCoCo :: Command Line Interface</name>
26  <description>JaCoCo Command Line Interface</description>
27
28  <dependencies>
29    <dependency>
30      <groupId>${project.groupId}</groupId>
31      <artifactId>org.jacoco.core</artifactId>
32    </dependency>
33    <dependency>
34      <groupId>${project.groupId}</groupId>
35      <artifactId>org.jacoco.report</artifactId>
36    </dependency>
37    <dependency>
38      <groupId>args4j</groupId>
39      <artifactId>args4j</artifactId>
40    </dependency>
41  </dependencies>
42
43  <build>
44    <sourceDirectory>src</sourceDirectory>
45    <plugins>
46      <plugin>
47        <groupId>org.codehaus.mojo</groupId>
48        <artifactId>exec-maven-plugin</artifactId>
49        <executions>
50          <execution>
51            <phase>package</phase>
52            <goals>
53              <goal>exec</goal>
54            </goals>
55            <configuration>
56              <toolchain>jdk</toolchain>
57              <executable>java</executable>
58              <arguments>
59                <argument>-cp</argument>
60                <classpath/>
61                <argument>org.jacoco.cli.internal.XmlDocumentation</argument>
62                <argument>${project.build.directory}/generated-documentation/cli.xml</argument>
63              </arguments>
64            </configuration>
65          </execution>
66        </executions>
67      </plugin>
68      <plugin>
69        <groupId>org.apache.maven.plugins</groupId>
70        <artifactId>maven-shade-plugin</artifactId>
71        <executions>
72          <execution>
73            <phase>package</phase>
74            <goals>
75              <goal>shade</goal>
76            </goals>
77            <configuration>
78              <shadedArtifactAttached>true</shadedArtifactAttached>
79              <shadedClassifierName>nodeps</shadedClassifierName>
80              <minimizeJar>true</minimizeJar>
81              <relocations>
82                <relocation>
83                  <pattern>org.objectweb.asm</pattern>
84                  <shadedPattern>org.jacoco.cli.internal.asm</shadedPattern>
85                </relocation>
86                <relocation>
87                  <pattern>org.kohsuke.args4j</pattern>
88                  <shadedPattern>org.jacoco.cli.internal.args4j</shadedPattern>
89                </relocation>
90                <relocation>
91                  <pattern>org.jacoco.core</pattern>
92                  <shadedPattern>org.jacoco.cli.internal.core</shadedPattern>
93                </relocation>
94                <relocation>
95                  <pattern>org.jacoco.report</pattern>
96                  <shadedPattern>org.jacoco.cli.internal.report</shadedPattern>
97                </relocation>
98              </relocations>
99              <transformers>
100                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
101                  <manifestEntries>
102                    <Implementation-Title>${project.description}</Implementation-Title>
103                    <Implementation-Vendor>${project.organization.name}</Implementation-Vendor>
104                    <Implementation-Version>${project.version}</Implementation-Version>
105                    <Main-Class>org.jacoco.cli.internal.Main</Main-Class>
106                  </manifestEntries>
107                </transformer>
108              </transformers>
109              <filters>
110                <filter>
111                  <artifact>args4j:args4j</artifact>
112                  <excludes>
113                    <exclude>**/Messages_*.properties</exclude>
114                  </excludes>
115                </filter>
116                <filter>
117                  <artifact>org.ow2.asm:*</artifact>
118                  <excludes>
119                    <exclude>module-info.class</exclude>
120                  </excludes>
121                </filter>
122              </filters>
123            </configuration>
124          </execution>
125        </executions>
126      </plugin>
127    </plugins>
128  </build>
129</project>
130