Integrated: 7903596: JMH: Explicitly enable annotation processors

Jaikiran Pai jpai at openjdk.org
Fri Dec 6 14:30:56 UTC 2024


On Thu, 30 Nov 2023 06:43:21 GMT, Jaikiran Pai <jpai at openjdk.org> wrote:

> Can I please get a review of this change which proposes to address the issue noted in https://bugs.openjdk.org/browse/CODETOOLS-7903596?
> 
> As noted in that issue, when a benchmark generated using Java 22 is run, at runtime it fails with:
> 
> 
> java -jar target/benchmarks.jar
> Exception in thread "main" java.lang.RuntimeException: ERROR: Unable to find the resource: /META-INF/BenchmarkList
> 	at org.openjdk.jmh.runner.AbstractResourceReader.getReaders(AbstractResourceReader.java:98)
> 	at org.openjdk.jmh.runner.BenchmarkList.find(BenchmarkList.java:124)
> 	at org.openjdk.jmh.runner.Runner.internalRun(Runner.java:252)
> 	at org.openjdk.jmh.runner.Runner.run(Runner.java:208)
> 	at org.openjdk.jmh.Main.main(Main.java:71)
> 
> 
> This is due to annotation processors being disabled by default during compilation starting Java 22. The commit in this PR, explicitly enables the `org.openjdk.jmh.generators.BenchmarkProcessor` annotation processor to allow for it to generate the necessary benchmark resources.
> 
> I've tested this change locally, with Java 8, Java 21 as well as Java 22 and the newly generated benchmark is now functional on all these versions.

This pull request has now been integrated.

Changeset: 2aa089c4
Author:    Jaikiran Pai <jpai at openjdk.org>
URL:       https://git.openjdk.org/jmh/commit/2aa089c4f089d3a5e647a413c01ada1234b9e7de
Stats:     57 lines in 5 files changed: 28 ins; 28 del; 1 mod

7903596: JMH: Explicitly enable annotation processors

Co-authored-by: Aleksey Shipilev <shade at openjdk.org>
Reviewed-by: shade

-------------

PR: https://git.openjdk.org/jmh/pull/125


More information about the jmh-dev mailing list