You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

pom.xml 6.4KB

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