Running micro benchmark results in 'Error: Unable to access jarfile'

Jorn Vernee jbvernee at xs4all.nl
Tue Feb 19 18:11:43 UTC 2019


Yes, that fixes the problem. Thanks!

Jorn

Erik Joelsson schreef op 2019-02-19 18:04:
> 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
> --- a/make/RunTests.gmk
> +++ b/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
> $$($1_MICRO_BENCHMARKS_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) \
>              $$($1_MICRO_VM_OPTIONS) $$($1_MICRO_BASIC_OPTIONS)
> $$(MICRO_OPTIONS) \
> 
> /Erik
> 
> On 2019-02-18 14:20, Claes Redestad wrote:
>> <moved to build-dev@ from jdk-dev at ..., original thread here:
>> http://mail.openjdk.java.net/pipermail/jdk-dev/2019-February/002624.html>
>> 
>> Hi,
>> 
>> 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 [1].
>> 
>> 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?
>> 
>> Thanks!
>> 
>> /Claes
>> 
>>> 
>>> Thanks,
>>> Jorn
>>> 
>>> [1] : 
>>> http://hg.openjdk.java.net/jdk/jdk/file/bec6c8739833/make/autoconf/lib-tests.m4#l76


More information about the build-dev mailing list