xref: /JGit/org.eclipse.jgit.benchmarks/pom.xml (revision 5c5f7c6b146b24f2bd4afae1902df85ad6e57ea3)
19a638b08SMatthias Sohn<?xml version="1.0" encoding="UTF-8"?>
29a638b08SMatthias Sohn<!--
3*5c5f7c6bSMatthias Sohn  Copyright (C) 2019, Matthias Sohn <matthias.sohn@sap.com> and others
49a638b08SMatthias Sohn
5*5c5f7c6bSMatthias Sohn  This program and the accompanying materials are made available under the
6*5c5f7c6bSMatthias Sohn  terms of the Eclipse Distribution License v. 1.0 which is available at
7*5c5f7c6bSMatthias Sohn  http://www.eclipse.org/org/documents/edl-v10.php.
89a638b08SMatthias Sohn
9*5c5f7c6bSMatthias Sohn  SPDX-License-Identifier: BSD-3-Clause
109a638b08SMatthias Sohn-->
11d36488adSMatthias Sohn<project xmlns="http://maven.apache.org/POM/4.0.0"
12d36488adSMatthias Sohn  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
13d36488adSMatthias Sohn  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
149a638b08SMatthias Sohn  <modelVersion>4.0.0</modelVersion>
159a638b08SMatthias Sohn
169a638b08SMatthias Sohn  <groupId>org.eclipse.jgit</groupId>
17f487a9ebSMatthias Sohn  <version>5.7.0-SNAPSHOT</version>
189a638b08SMatthias Sohn  <artifactId>org.eclipse.jgit.benchmarks</artifactId>
199a638b08SMatthias Sohn  <packaging>jar</packaging>
209a638b08SMatthias Sohn
219a638b08SMatthias Sohn  <name>JGit - JMH based benchmarks</name>
229a638b08SMatthias Sohn
239a638b08SMatthias Sohn  <properties>
249a638b08SMatthias Sohn    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
259a638b08SMatthias Sohn    <javac.target>1.8</javac.target>
269a638b08SMatthias Sohn    <jmh.version>1.21</jmh.version>
279a638b08SMatthias Sohn    <uberjar.name>benchmarks</uberjar.name>
289a638b08SMatthias Sohn  </properties>
299a638b08SMatthias Sohn
309a638b08SMatthias Sohn  <dependencies>
319a638b08SMatthias Sohn    <dependency>
329a638b08SMatthias Sohn      <groupId>org.openjdk.jmh</groupId>
339a638b08SMatthias Sohn      <artifactId>jmh-core</artifactId>
349a638b08SMatthias Sohn      <version>${jmh.version}</version>
359a638b08SMatthias Sohn    </dependency>
369a638b08SMatthias Sohn    <dependency>
379a638b08SMatthias Sohn      <groupId>org.openjdk.jmh</groupId>
389a638b08SMatthias Sohn      <artifactId>jmh-generator-annprocess</artifactId>
399a638b08SMatthias Sohn      <version>${jmh.version}</version>
409a638b08SMatthias Sohn      <scope>provided</scope>
419a638b08SMatthias Sohn    </dependency>
429a638b08SMatthias Sohn    <dependency>
439a638b08SMatthias Sohn      <groupId>org.eclipse.jgit</groupId>
449a638b08SMatthias Sohn      <artifactId>org.eclipse.jgit</artifactId>
459a638b08SMatthias Sohn      <version>${project.version}</version>
469a638b08SMatthias Sohn    </dependency>
479a638b08SMatthias Sohn  </dependencies>
489a638b08SMatthias Sohn
499a638b08SMatthias Sohn  <build>
509a638b08SMatthias Sohn    <sourceDirectory>src/</sourceDirectory>
519a638b08SMatthias Sohn    <plugins>
529a638b08SMatthias Sohn      <plugin>
539a638b08SMatthias Sohn        <groupId>org.apache.maven.plugins</groupId>
549a638b08SMatthias Sohn        <artifactId>maven-compiler-plugin</artifactId>
559a638b08SMatthias Sohn        <version>3.8.1</version>
569a638b08SMatthias Sohn        <configuration>
579a638b08SMatthias Sohn          <compilerVersion>${javac.target}</compilerVersion>
589a638b08SMatthias Sohn          <source>${javac.target}</source>
599a638b08SMatthias Sohn          <target>${javac.target}</target>
609a638b08SMatthias Sohn          <generatedSourcesDirectory>.apt_generated</generatedSourcesDirectory>
619a638b08SMatthias Sohn        </configuration>
629a638b08SMatthias Sohn        <executions>
639a638b08SMatthias Sohn          <execution>
649a638b08SMatthias Sohn            <id>compile-with-errorprone</id>
659a638b08SMatthias Sohn            <phase>compile</phase>
669a638b08SMatthias Sohn            <goals>
679a638b08SMatthias Sohn              <goal>compile</goal>
689a638b08SMatthias Sohn            </goals>
699a638b08SMatthias Sohn            <configuration>
709a638b08SMatthias Sohn              <compilerId>javac-with-errorprone</compilerId>
719a638b08SMatthias Sohn              <forceJavacCompilerUse>true</forceJavacCompilerUse>
729a638b08SMatthias Sohn              <compilerArgs>
739a638b08SMatthias Sohn                <arg>-Xep:ExpectedExceptionChecker:ERROR</arg>
749a638b08SMatthias Sohn              </compilerArgs>
759a638b08SMatthias Sohn            </configuration>
769a638b08SMatthias Sohn          </execution>
779a638b08SMatthias Sohn        </executions>
789a638b08SMatthias Sohn        <dependencies>
799a638b08SMatthias Sohn          <dependency>
809a638b08SMatthias Sohn            <groupId>org.codehaus.plexus</groupId>
819a638b08SMatthias Sohn            <artifactId>plexus-compiler-javac</artifactId>
829a638b08SMatthias Sohn            <version>2.8.5</version>
839a638b08SMatthias Sohn          </dependency>
849a638b08SMatthias Sohn          <dependency>
859a638b08SMatthias Sohn            <groupId>org.codehaus.plexus</groupId>
869a638b08SMatthias Sohn            <artifactId>plexus-compiler-javac-errorprone</artifactId>
879a638b08SMatthias Sohn            <version>2.8.5</version>
889a638b08SMatthias Sohn          </dependency>
899a638b08SMatthias Sohn          <!-- override plexus-compiler-javac-errorprone's dependency on
909a638b08SMatthias Sohn               Error Prone with the latest version -->
919a638b08SMatthias Sohn          <dependency>
929a638b08SMatthias Sohn            <groupId>com.google.errorprone</groupId>
939a638b08SMatthias Sohn            <artifactId>error_prone_core</artifactId>
9497844038SDavid Pursehouse            <version>2.3.4</version>
959a638b08SMatthias Sohn          </dependency>
969a638b08SMatthias Sohn        </dependencies>
979a638b08SMatthias Sohn      </plugin>
989a638b08SMatthias Sohn      <plugin>
999a638b08SMatthias Sohn        <groupId>org.apache.maven.plugins</groupId>
1009a638b08SMatthias Sohn        <artifactId>maven-shade-plugin</artifactId>
1017b73d5eeSMichael Keppler        <version>3.2.1</version>
1029a638b08SMatthias Sohn        <executions>
1039a638b08SMatthias Sohn          <execution>
1049a638b08SMatthias Sohn            <phase>package</phase>
1059a638b08SMatthias Sohn            <goals>
1069a638b08SMatthias Sohn              <goal>shade</goal>
1079a638b08SMatthias Sohn            </goals>
1089a638b08SMatthias Sohn            <configuration>
1099a638b08SMatthias Sohn              <finalName>${uberjar.name}</finalName>
1109a638b08SMatthias Sohn              <transformers>
1119a638b08SMatthias Sohn                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
1129a638b08SMatthias Sohn                  <mainClass>org.openjdk.jmh.Main</mainClass>
1139a638b08SMatthias Sohn                </transformer>
1149a638b08SMatthias Sohn              </transformers>
1159a638b08SMatthias Sohn              <filters>
1169a638b08SMatthias Sohn                <filter>
117d36488adSMatthias Sohn                  <!-- Shading signed JARs will fail without this.
118d36488adSMatthias Sohn                       http://stackoverflow.com/questions/999489/invalid-signature-file-when-attempting-to-run-a-jar -->
1199a638b08SMatthias Sohn                  <artifact>*:*</artifact>
1209a638b08SMatthias Sohn                  <excludes>
1219a638b08SMatthias Sohn                    <exclude>META-INF/*.SF</exclude>
1229a638b08SMatthias Sohn                    <exclude>META-INF/*.DSA</exclude>
1239a638b08SMatthias Sohn                    <exclude>META-INF/*.RSA</exclude>
1249a638b08SMatthias Sohn                  </excludes>
1259a638b08SMatthias Sohn                </filter>
1269a638b08SMatthias Sohn              </filters>
1279a638b08SMatthias Sohn            </configuration>
1289a638b08SMatthias Sohn          </execution>
1299a638b08SMatthias Sohn        </executions>
1309a638b08SMatthias Sohn      </plugin>
1319a638b08SMatthias Sohn    </plugins>
1329a638b08SMatthias Sohn    <pluginManagement>
1339a638b08SMatthias Sohn      <plugins>
1349a638b08SMatthias Sohn        <!--This plugin's configuration is used to store Eclipse m2e settings only.
1359a638b08SMatthias Sohn            It has no influence on the Maven build itself. -->
1369a638b08SMatthias Sohn        <plugin>
1379a638b08SMatthias Sohn          <groupId>org.eclipse.m2e</groupId>
1389a638b08SMatthias Sohn          <artifactId>lifecycle-mapping</artifactId>
1399a638b08SMatthias Sohn          <version>1.0.0</version>
1409a638b08SMatthias Sohn          <configuration>
1419a638b08SMatthias Sohn            <lifecycleMappingMetadata>
1429a638b08SMatthias Sohn              <pluginExecutions>
1439a638b08SMatthias Sohn                <pluginExecution>
1449a638b08SMatthias Sohn                  <pluginExecutionFilter>
1459a638b08SMatthias Sohn                    <groupId>org.apache.maven.plugins</groupId>
1469a638b08SMatthias Sohn                    <artifactId>maven-antrun-plugin</artifactId>
1479a638b08SMatthias Sohn                    <versionRange>[1.8,)</versionRange>
1489a638b08SMatthias Sohn                    <goals>
1499a638b08SMatthias Sohn                      <goal>run</goal>
1509a638b08SMatthias Sohn                    </goals>
1519a638b08SMatthias Sohn                  </pluginExecutionFilter>
1529a638b08SMatthias Sohn                  <action>
1539a638b08SMatthias Sohn                    <ignore></ignore>
1549a638b08SMatthias Sohn                  </action>
1559a638b08SMatthias Sohn                </pluginExecution>
1569a638b08SMatthias Sohn              </pluginExecutions>
1579a638b08SMatthias Sohn            </lifecycleMappingMetadata>
1589a638b08SMatthias Sohn          </configuration>
1599a638b08SMatthias Sohn        </plugin>
1609a638b08SMatthias Sohn      </plugins>
1619a638b08SMatthias Sohn    </pluginManagement>
1629a638b08SMatthias Sohn  </build>
163d36488adSMatthias Sohn  <distributionManagement>
164d36488adSMatthias Sohn    <repository>
165d36488adSMatthias Sohn      <id>repo.eclipse.org</id>
166d36488adSMatthias Sohn      <name>JGit Maven Repository - Releases</name>
167d36488adSMatthias Sohn      <url>https://repo.eclipse.org/content/repositories/jgit-releases/</url>
168d36488adSMatthias Sohn    </repository>
169d36488adSMatthias Sohn    <snapshotRepository>
170d36488adSMatthias Sohn      <id>repo.eclipse.org</id>
171d36488adSMatthias Sohn      <name>JGit Maven Repository - Snapshots</name>
172d36488adSMatthias Sohn      <url>https://repo.eclipse.org/content/repositories/jgit-snapshots/</url>
173d36488adSMatthias Sohn      <uniqueVersion>true</uniqueVersion>
174d36488adSMatthias Sohn    </snapshotRepository>
175d36488adSMatthias Sohn    <site>
176d36488adSMatthias Sohn      <id>jgit.website</id>
177d36488adSMatthias Sohn      <name>JGit Website</name>
178d36488adSMatthias Sohn      <url>${jgit.website.url}</url>
179d36488adSMatthias Sohn    </site>
180d36488adSMatthias Sohn  </distributionManagement>
1819a638b08SMatthias Sohn</project>
182