From e6a4bf993f686b1f2c2afc78eb9860ed6fa1915f Mon Sep 17 00:00:00 2001 From: asmhatre Date: Sun, 26 Jul 2026 11:48:13 +0000 Subject: [PATCH] Add Maven-free JMH run script --- jmh/run-without-maven.sh | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 jmh/run-without-maven.sh diff --git a/jmh/run-without-maven.sh b/jmh/run-without-maven.sh new file mode 100644 index 0000000..1a88061 --- /dev/null +++ b/jmh/run-without-maven.sh @@ -0,0 +1,15 @@ +#!/usr/bin/env bash +# Same benchmarks without Maven: fetch the four jars, compile with the JMH +# annotation processor, run org.openjdk.jmh.Main directly. +set -euo pipefail +cd "$(dirname "$0")" +mkdir -p lib out +for u in org/openjdk/jmh/jmh-core/1.37/jmh-core-1.37.jar \ + org/openjdk/jmh/jmh-generator-annprocess/1.37/jmh-generator-annprocess-1.37.jar \ + net/sf/jopt-simple/jopt-simple/5.0.4/jopt-simple-5.0.4.jar \ + org/apache/commons/commons-math3/3.6.1/commons-math3-3.6.1.jar; do + [ -f "lib/$(basename "$u")" ] || curl -sSL -o "lib/$(basename "$u")" "https://repo1.maven.org/maven2/$u" +done +CP=$(ls lib/*.jar | tr '\n' ':') +javac --add-modules jdk.incubator.vector -cp "$CP" -proc:full -d out $(find src -name '*.java') +java --add-modules jdk.incubator.vector -cp "out:$CP" org.openjdk.jmh.Main "$@"