[rfc] more benevolent java version check
Jonathan Gibbons
jonathan.gibbons at oracle.com
Fri Jul 29 15:16:26 UTC 2016
Hi Jiri,
I'll check this out.
-- Jon
On 07/29/2016 01:57 AM, Jiri Vanek wrote:
> ping please?
>
> J.
> On 07/27/2016 08:28 PM, Jiri Vanek wrote:
>> Hello!
>>
>> Please accept attached patch which is making java version check for
>> other vm more bullet proof.
>>
>> Originally, the java version was strictly expecting the searched item
>> on first line.
>> However, when eg $JAVA_TOOL_OPTIONS is used, the output of forked
>> process got messy. EG:
>>
>> java -version
>> Picked up JAVA_TOOL_OPTIONS: -XX:+UseShenandoahGC
>> OpenJDK 64-Bit Server VM warning: Compressed Oops not supported with
>> ShenandoahGC
>> ....
>>
>> My patch is making the usage of JAVA_TOOL_OPTIONS possible, as it is
>> searching the output of forked
>> process by key.
>>
>>
>> Tahnx!
>>
>> J.
>>
>> benevolent_java_version.patch
>>
>>
>> diff -r 7906b5ebfc75 src/share/classes/com/sun/javatest/regtest/JDK.java
>> --- a/src/share/classes/com/sun/javatest/regtest/JDK.java Thu Apr
>> 16 17:45:57 2015 -0700
>> +++ b/src/share/classes/com/sun/javatest/regtest/JDK.java Wed Jul
>> 27 20:23:30 2016 +0200
>> @@ -150,9 +150,15 @@
>> String out = getOutput(p);
>> int rc = p.waitFor();
>> if (rc == 0) {
>> - String[] v =
>> StringUtils.splitEqual(out.trim());
>> - if (v.length == 2 &&
>> v[0].equals(VERSION_PROPERTY))
>> - version = v[1];
>> + String[] outs=out.split("\n");
>> + for (String line : outs) {
>> + System.out.println(line);
>> + String[] v =
>> StringUtils.splitEqual(line.trim());
>> + if (v.length == 2 &&
>> v[0].equals(VERSION_PROPERTY)) {
>> + version = v[1];
>> + break;
>> + }
>> + }
>> }
>> } catch (InterruptedException e) {
>> // ignore, leave version as default
>>
>
More information about the jtreg-dev
mailing list