1<?xml version="1.0" encoding="UTF-8"?> 2<!-- 3 Copyright (C) 2019, Matthias Sohn <matthias.sohn@sap.com> and others 4 5 This program and the accompanying materials are made available under the 6 terms of the Eclipse Distribution License v. 1.0 which is available at 7 http://www.eclipse.org/org/documents/edl-v10.php. 8 9 SPDX-License-Identifier: BSD-3-Clause 10--> 11<project xmlns="http://maven.apache.org/POM/4.0.0" 12 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 13 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 14 <modelVersion>4.0.0</modelVersion> 15 16 <groupId>org.eclipse.jgit</groupId> 17 <version>5.13.0-SNAPSHOT</version> 18 <artifactId>org.eclipse.jgit.benchmarks</artifactId> 19 <packaging>jar</packaging> 20 21 <name>JGit - JMH based benchmarks</name> 22 23 <properties> 24 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 25 <javac.target>1.8</javac.target> 26 <jmh.version>1.21</jmh.version> 27 <uberjar.name>benchmarks</uberjar.name> 28 </properties> 29 30 <dependencies> 31 <dependency> 32 <groupId>org.openjdk.jmh</groupId> 33 <artifactId>jmh-core</artifactId> 34 <version>${jmh.version}</version> 35 </dependency> 36 <dependency> 37 <groupId>org.openjdk.jmh</groupId> 38 <artifactId>jmh-generator-annprocess</artifactId> 39 <version>${jmh.version}</version> 40 <scope>provided</scope> 41 </dependency> 42 <dependency> 43 <groupId>org.eclipse.jgit</groupId> 44 <artifactId>org.eclipse.jgit</artifactId> 45 <version>${project.version}</version> 46 </dependency> 47 </dependencies> 48 49 <build> 50 <sourceDirectory>src/</sourceDirectory> 51 <plugins> 52 <plugin> 53 <groupId>org.apache.maven.plugins</groupId> 54 <artifactId>maven-enforcer-plugin</artifactId> 55 <version>3.0.0-M3</version> 56 <executions> 57 <execution> 58 <id>enforce-maven</id> 59 <goals> 60 <goal>enforce</goal> 61 </goals> 62 <configuration> 63 <rules> 64 <requireMavenVersion> 65 <version>3.6.3</version> 66 </requireMavenVersion> 67 </rules> 68 </configuration> 69 </execution> 70 </executions> 71 </plugin> 72 <plugin> 73 <artifactId>maven-compiler-plugin</artifactId> 74 <configuration> 75 <encoding>UTF-8</encoding> 76 <source>1.8</source> 77 <target>1.8</target> 78 <generatedSourcesDirectory>.apt_generated</generatedSourcesDirectory> 79 </configuration> 80 </plugin> 81 <plugin> 82 <groupId>org.apache.maven.plugins</groupId> 83 <artifactId>maven-shade-plugin</artifactId> 84 <version>3.2.4</version> 85 <executions> 86 <execution> 87 <phase>package</phase> 88 <goals> 89 <goal>shade</goal> 90 </goals> 91 <configuration> 92 <finalName>${uberjar.name}</finalName> 93 <transformers> 94 <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> 95 <mainClass>org.openjdk.jmh.Main</mainClass> 96 </transformer> 97 </transformers> 98 <filters> 99 <filter> 100 <!-- Shading signed JARs will fail without this. 101 http://stackoverflow.com/questions/999489/invalid-signature-file-when-attempting-to-run-a-jar --> 102 <artifact>*:*</artifact> 103 <excludes> 104 <exclude>META-INF/*.SF</exclude> 105 <exclude>META-INF/*.DSA</exclude> 106 <exclude>META-INF/*.RSA</exclude> 107 </excludes> 108 </filter> 109 </filters> 110 </configuration> 111 </execution> 112 </executions> 113 </plugin> 114 </plugins> 115 <pluginManagement> 116 <plugins> 117 <!--This plugin's configuration is used to store Eclipse m2e settings only. 118 It has no influence on the Maven build itself. --> 119 <plugin> 120 <groupId>org.eclipse.m2e</groupId> 121 <artifactId>lifecycle-mapping</artifactId> 122 <version>1.0.0</version> 123 <configuration> 124 <lifecycleMappingMetadata> 125 <pluginExecutions> 126 <pluginExecution> 127 <pluginExecutionFilter> 128 <groupId>org.apache.maven.plugins</groupId> 129 <artifactId>maven-antrun-plugin</artifactId> 130 <versionRange>[1.8,)</versionRange> 131 <goals> 132 <goal>run</goal> 133 </goals> 134 </pluginExecutionFilter> 135 <action> 136 <ignore></ignore> 137 </action> 138 </pluginExecution> 139 </pluginExecutions> 140 </lifecycleMappingMetadata> 141 </configuration> 142 </plugin> 143 <plugin> 144 <groupId>org.apache.maven.plugins</groupId> 145 <artifactId>maven-site-plugin</artifactId> 146 <version>3.9.1</version> 147 <dependencies> 148 <dependency><!-- add support for ssh/scp --> 149 <groupId>org.apache.maven.wagon</groupId> 150 <artifactId>wagon-ssh</artifactId> 151 <version>3.4.3</version> 152 </dependency> 153 </dependencies> 154 </plugin> 155 <plugin> 156 <groupId>org.apache.maven.plugins</groupId> 157 <artifactId>maven-surefire-report-plugin</artifactId> 158 <version>3.0.0-M5</version> 159 </plugin> 160 <plugin> 161 <groupId>org.apache.maven.plugins</groupId> 162 <artifactId>maven-jxr-plugin</artifactId> 163 <version>3.1.1</version> 164 </plugin> 165 <plugin> 166 <groupId>org.apache.maven.plugins</groupId> 167 <artifactId>maven-project-info-reports-plugin</artifactId> 168 <version>3.1.2</version> 169 </plugin> 170 </plugins> 171 </pluginManagement> 172 </build> 173 <distributionManagement> 174 <repository> 175 <id>repo.eclipse.org</id> 176 <name>JGit Maven Repository - Releases</name> 177 <url>https://repo.eclipse.org/content/repositories/jgit-releases/</url> 178 </repository> 179 <snapshotRepository> 180 <id>repo.eclipse.org</id> 181 <name>JGit Maven Repository - Snapshots</name> 182 <url>https://repo.eclipse.org/content/repositories/jgit-snapshots/</url> 183 <uniqueVersion>true</uniqueVersion> 184 </snapshotRepository> 185 <site> 186 <id>jgit.website</id> 187 <name>JGit Website</name> 188 <url>${jgit.website.url}</url> 189 </site> 190 </distributionManagement> 191</project> 192