Running micro benchmark results in 'Error: Unable to access jarfile'
erik.joelsson at oracle.com
Tue Feb 19 17:04:11 UTC 2019
The problem with the jarfile looks to be a missing $(FIXPATH) when
running microbenchmarks. The java process is simply unable to understand
cygwin paths. Does this patch solve the issue for you, Jorn?
diff -r 7c17199fa37d make/RunTests.gmk
@@ -690,7 +690,7 @@
$$(call LogWarn, Running test '$$($1_TEST)')
$$(call MakeDir, $$($1_TEST_RESULTS_DIR) $$($1_TEST_SUPPORT_DIR))
$$(call ExecuteWithLog, $$($1_TEST_SUPPORT_DIR)/micro, \
- $$($1_MICRO_TEST_JDK)/bin/java $$($1_MICRO_JAVA_OPTIONS) -jar
+ $$(FIXPATH) $$($1_MICRO_TEST_JDK)/bin/java
$$($1_MICRO_JAVA_OPTIONS) -jar $$($1_MICRO_BENCHMARKS_JAR) \
$$($1_MICRO_ITER) $$($1_MICRO_FORK) $$($1_MICRO_TIME) \
$$($1_MICRO_WARMUP_ITER) $$($1_MICRO_WARMUP_TIME) \
On 2019-02-18 14:20, Claes Redestad wrote:
> <moved to build-dev@ from jdk-dev at ..., original thread here:
> On 2019-02-18 22:34, Jorn Vernee wrote:
>> Hi Claes,
>>> 1. Does running make test rather than make test-only work?
>> No. Same error there. Sorry, I tried that first and then re-ran with
>> `test-only`. I also tried with a clean build FWIW.
>>> 2. Can you run the benchmarks.jar directly?
>> Yes, this is working, thanks. This way I can also pass extra flags to
>> JMH, which is nice :)
>> FWIW, I also had some problems when running configure.
>> 1.) I did not get a warning when I was missing --with-jmh for
>> configure, although it looks like there is supposed to be one
>> (without --with-jmh I got the same access error, but the
>> benchmarks.jar did not exist).
> --with-jmh is an optional configure flag, not sure what we could do to
> warn here. Perhaps there's some way to ensure certain make targets
> depend on the configure having been run with the necessary prerequistes.
> Sounds like a fine enhancement.
>> 2.) My path to the --with-jmh folder had spaces in it, which was
>> causing an error in make/autoconf/lib-tests.m4 on line 76 .
> Sounds like a bug.
>> But those both had obvious workarounds.
>> I was hoping to use the framework for Panama, so I'd likely have some
>> native library as dependency of the benchmark. Is there currently any
>> support for building (native) dependencies automatically?
> There should be support in the build system _somewhere_, but adding a
> native library to a microbenchmark might still be a non-trivial
> enhancement to the current implementation. It'd be a great addition,
> though. I might have time to help out sometime soon, but I've got my
> hands full right now. Perhaps someone else on this list could advice?
>>  :
More information about the build-dev