> Can I please get a review of this change which proposes to fix jmh test > launch failures noted in https://bugs.openjdk.org/browse/JDK-8317802? > > jmh apparently relies on annotation processors during compilation of a > benchmark. When annotation processing is disabled, the generated benchmark > jar is unusable when the benchmark is launched and fails with: > > > 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) > > After the integration of https://bugs.openjdk.org/browse/JDK-8306819 recently > in JDK mainline, `javac` no longer runs annotation processors by default. > These jmh tests that are compiled as part of the JDK build will now have to > enable annotation processing explicitly. > > The commit in this PR enables annotation processing by setting `-proc:full` > (implying run annotation processors as well as compile the files) when > compiling the benchmarks. > > I tested this change locally. Without this change, the following command > fails: > > > make test TEST="micro:java.lang.ArraysSort" > > ... > Test selection 'micro:java.lang.ArraysSort', will run: > * micro:java.lang.ArraysSort > > Running test 'micro:java.lang.ArraysSort' > 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) > Finished running test 'micro:java.lang.ArraysSort' > > > > After the change in this PR, the same command works fine and the jmh > benchmark is run.
Jaikiran Pai has updated the pull request incrementally with one additional commit since the last revision: Erik's suggestion - move param to new line ------------- Changes: - all: https://git.openjdk.org/jdk/pull/16122/files - new: https://git.openjdk.org/jdk/pull/16122/files/24a05dff..d3fa29b9 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=16122&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=16122&range=01-02 Stats: 2 lines in 1 file changed: 1 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/16122.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/16122/head:pull/16122 PR: https://git.openjdk.org/jdk/pull/16122