Skip to content

Commit 89d0c2d

Browse files
author
Gary Gregory
committed
Add JMH to POM to factlitate performance testing and avoid future and
current PRs to clash in the POM.
1 parent 7b6b6d8 commit 89d0c2d

1 file changed

Lines changed: 53 additions & 1 deletion

File tree

pom.xml

Lines changed: 53 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -271,6 +271,18 @@ file comparators, endian transformation classes, and much more.
271271
<version>3.11</version>
272272
<scope>test</scope>
273273
</dependency>
274+
<dependency>
275+
<groupId>org.openjdk.jmh</groupId>
276+
<artifactId>jmh-core</artifactId>
277+
<version>${jmh.version}</version>
278+
<scope>test</scope>
279+
</dependency>
280+
<dependency>
281+
<groupId>org.openjdk.jmh</groupId>
282+
<artifactId>jmh-generator-annprocess</artifactId>
283+
<version>${jmh.version}</version>
284+
<scope>test</scope>
285+
</dependency>
274286
</dependencies>
275287

276288
<properties>
@@ -306,7 +318,8 @@ file comparators, endian transformation classes, and much more.
306318
<commons.surefire.version>3.0.0-M5</commons.surefire.version>
307319
<commons.japicmp.version>0.15.2</commons.japicmp.version>
308320
<spotbugs.plugin.version>4.2.0</spotbugs.plugin.version>
309-
<spotbugs.impl.version>4.2.0</spotbugs.impl.version>
321+
<spotbugs.impl.version>4.2.0</spotbugs.impl.version>
322+
<jmh.version>1.27</jmh.version>
310323
<japicmp.skip>false</japicmp.skip>
311324
<jacoco.skip>${env.JACOCO_SKIP}</jacoco.skip>
312325
<commons.release.isDistModule>true</commons.release.isDistModule>
@@ -549,5 +562,44 @@ file comparators, endian transformation classes, and much more.
549562
<coveralls.skip>true</coveralls.skip>
550563
</properties>
551564
</profile>
565+
<profile>
566+
<id>benchmark</id>
567+
<properties>
568+
<skipTests>true</skipTests>
569+
<benchmark>org.apache</benchmark>
570+
</properties>
571+
<build>
572+
<plugins>
573+
<plugin>
574+
<groupId>org.codehaus.mojo</groupId>
575+
<artifactId>exec-maven-plugin</artifactId>
576+
<version>3.0.0</version>
577+
<executions>
578+
<execution>
579+
<id>benchmark</id>
580+
<phase>test</phase>
581+
<goals>
582+
<goal>exec</goal>
583+
</goals>
584+
<configuration>
585+
<classpathScope>test</classpathScope>
586+
<executable>java</executable>
587+
<arguments>
588+
<argument>-classpath</argument>
589+
<classpath/>
590+
<argument>org.openjdk.jmh.Main</argument>
591+
<argument>-rf</argument>
592+
<argument>json</argument>
593+
<argument>-rff</argument>
594+
<argument>target/jmh-result.${benchmark}.json</argument>
595+
<argument>${benchmark}</argument>
596+
</arguments>
597+
</configuration>
598+
</execution>
599+
</executions>
600+
</plugin>
601+
</plugins>
602+
</build>
603+
</profile>
552604
</profiles>
553605
</project>

0 commit comments

Comments
 (0)