diff --git a/benchmarks/benchmark.sh b/benchmarks/benchmark.sh
index 6e76ac4d7539341ecd41abe233b225f20c419c64..e27f33da7de98afddcf28721ee818a103106d445 100755
--- a/benchmarks/benchmark.sh
+++ b/benchmarks/benchmark.sh
@@ -1,20 +1,36 @@
 #!/bin/sh
 
 CWD=$(dirname "$0")
-if [ "x$JBIGI" = 'x' ]
-then
-    JBIGI="$CWD/../build/jbigi.jar"
-fi
 if [ "x$JAVA" = 'x' ]
 then
     JAVA=java
 fi
 
-CLASSPATH="$CWD/java/build/benchmarks.jar"
+if [ "x$BENCHMARKS" = 'x' ]
+then
+    BENCHMARKS="$CWD/benchmarks.jar"
+    stat "$BENCHMARKS" >/dev/null 2>&1
+    if [ "x$?" != 'x0' ]
+    then
+        BENCHMARKS="$CWD/java/build/benchmarks.jar"
+    fi
+fi
+
+if [ "x$JBIGI" = 'x' ]
+then
+    JBIGI="$CWD/jbigi.jar"
+    stat "$JBIGI" >/dev/null 2>&1
+    if [ "x$?" != 'x0' ]
+    then
+        JBIGI="$CWD/../build/jbigi.jar"
+    fi
+fi
+
+CLASSPATH="$BENCHMARKS"
 if [ "x${1:-}" = 'x--jbigi' ]
 then
     CLASSPATH="$CLASSPATH:$JBIGI"
     shift
 fi
 
-$JAVA -cp "$CLASSPATH" org.openjdk.jmh.Main "$@"
+$JAVA -cp "$CLASSPATH" "$@"