Status of jtreg build

Martin Buchholz martinrb at google.com
Sat Jun 11 16:33:46 UTC 2016


Thanks, Jonathan,

testng.org no longer tries to be a direct source of binary artifacts.
You might point them at
http://mvnrepository.com/artifact/com.beust/jcommander
http://mvnrepository.com/artifact/org.testng/testng

Looking at the Usages column at
http://mvnrepository.com/artifact/org.testng/testng, I would guess 6.9.6
was a bug fix release for 6.9.5.


On Fri, Jun 10, 2016 at 4:09 PM, Jonathan Gibbons <
jonathan.gibbons at oracle.com> wrote:

> Martin, Volker, jtreg builders,
>
> I've updated jtreg so that it can take testng-*.jar and jcommander-*.jar
> as found
> on Maven.
>
> Updated instructions are in
> * make/Defs.gmk (if you use make)
> * make/build.properties (if you use Ant)
>
> https://bugs.openjdk.java.net/browse/CODETOOLS-7901669
>
> -- Jon
>
>
> On 04/13/2016 08:26 AM, Martin Buchholz wrote:
>
>> Maven likes to have as many jar files as possible, so jcommander and
>> testng are separated.
>> But jtreg thinks testng.jar should contain jcommander, so I ended up
>> having to build testng-jar-all
>>
>> (jtreg should probably switch to maven's view of the world and take
>> jcommander as another dependency)
>>
>> Hacky build script snippet:
>>
>> # --- testng ---
>> # Build "fat" testng.jar (incorporating jcommander) from source.
>> # No one seems to distribute such fat testng jars anymore.
>> rm -rf testng testng-*
>> wget -qOtestng.zip
>> https://github.com/cbeust/testng/archive/testng-6.8.5.zip
>> unzip -q testng.zip
>> rm testng.zip
>> mv testng-* testng
>> (
>>    export JAVA_HOME="$HOME/jdk/jdk6"
>>    export PATH=$JAVA_HOME/bin:$PATH
>>    cd testng &&
>>    mkdir -p ~/.ant/lib &&
>>    cp ivy-2.1.0.jar ~/.ant/lib/. &&
>>    ant clean compile copy-resources testng-jar-all &&
>>    rm ~/.ant/lib/ivy-2.1.0.jar
>> )
>> TESTNG_HOME="$ROOT/testng"
>> TESTNG_JAR=$(find "$ROOT/testng/target/" -name "testng*jar")
>>
>> On Tue, Apr 12, 2016 at 11:53 PM, Volker Simonis
>> <volker.simonis at gmail.com> wrote:
>>
>>>
>>> On Tue, Apr 12, 2016 at 11:28 PM, Martin Buchholz <martinrb at google.com>
>>> wrote:
>>>
>>>> jtreg build on
>>>> https://adopt-openjdk.ci.cloudbees.com/
>>>> is broken, as is its dependency asmtools
>>>> The jtreg-4.2 build they advertise was created before there was any 4.2
>>>> tag.
>>>> They seem to be missing testng as a dependency.
>>>> The project does keep trying (and failing) to build, however.
>>>>
>>>> I tried and failed to find on the Net the "full" testng-6.8.zip that
>>>> used to be distributed on testng.org.
>>>>
>>>> That seems true, but I think all you needed from the "full"
>>> testng-6.8.zip
>>> was the LICENSE file. See jtreg/make/jtreg.gmk
>>>
>>> $(JTREG_IMAGEDIR)/legal/testng/LICENSE.txt: $(call
>>> PosixPath,$(TESTNG_HOME)/LICENSE.txt)
>>>          $(MKDIR) -p $(@D)
>>>          $(CAT) $(TESTNG_HOME)/LICENSE.txt >> $@
>>>
>>> The testng jar file is specified by TESTNG_JAR anyway. So I think you can
>>> download the jar from
>>>
>>> http://mvnrepository.com/artifact/org.testng/testng/6.8 or
>>> http://mvnrepository.com/artifact/org.testng/testng/6.8.5
>>>
>>> because http://openjdk.java.net/jtreg/build.html now recommends 6.8.5
>>> and
>>> get the license file from:
>>>
>>> https://github.com/cbeust/testng
>>>
>>> On Tue, Apr 12, 2016 at 2:11 PM, Jonathan Gibbons
>>>> <jonathan.gibbons at oracle.com> wrote:
>>>>
>>>>>
>>>>> On 04/11/2016 11:06 AM, Carsten Varming wrote:
>>>>>
>>>>>> Dear jtreg devs,
>>>>>>
>>>>>> I wanted to download jtreg to run JDK9 hotspot regression tests, but I
>>>>>> have been unsuccessful so far. Perhaps you know what I need to do to
>>>>>> get
>>>>>> going.
>>>>>>
>>>>>> The hotspot regression tests need at least jtreg 4.2 b01. When I
>>>>>> downloaded the latest build published at
>>>>>> https://adopt-openjdk.ci.cloudbees.com/job/jtreg/ (4.2.0-tip, from
>>>>>> build
>>>>>> 496) and tried the hotspot regression tests I got:
>>>>>>
>>>>>> Error: Unexpected exception occurred! java.lang.NumberFormatException:
>>>>>> For
>>>>>> input string: "ip"
>>>>>> java.lang.NumberFormatException: For input string: "ip"
>>>>>>          at
>>>>>>
>>>>>> java.lang.NumberFormatException.forInputString(java.base at 9-internal
>>>>>> /NumberFormatException.java:65)
>>>>>>          at
>>>>>> java.lang.Integer.parseInt(java.base at 9-internal/Integer.java:695)
>>>>>>          at
>>>>>> java.lang.Integer.parseInt(java.base at 9-internal/Integer.java:813)
>>>>>>          at
>>>>>> com.sun.javatest.regtest.Version.getBuild(Version.java:186)
>>>>>>          at
>>>>>> com.sun.javatest.regtest.Version.compareTo(Version.java:168)
>>>>>>          at com.sun.javatest.regtest.Main.run(Main.java:1091)
>>>>>>          at com.sun.javatest.regtest.Main.run(Main.java:1037)
>>>>>>          at com.sun.javatest.regtest.Main.main(Main.java:951)
>>>>>>
>>>>>> I suspect the check against "requiredVersion=4.2 b01" from TEST.ROOT
>>>>>>
>>>>>> (
>>>>>> http://hg.openjdk.java.net/jdk9/hs-rt/hotspot/file/1c08ca66db33/test/TEST.ROOT
>>>>>> )
>>>>>> went wrong. I suspect "build = manifest.getProperty("jtreg-Build");"
>>>>>> in
>>>>>>
>>>>>>
>>>>>> http://hg.openjdk.java.net/code-tools/jtreg/file/6bfef17a03d5/src/share/classes/com/sun/javatest/regtest/Version.java
>>>>>> sets Version.build to "tip" and Version.getBuild tries to parse "ip"
>>>>>> as
>>>>>> a
>>>>>> number. :(
>>>>>>
>>>>>> I tried to get past this problem by changing the required jtreg
>>>>>> version
>>>>>> to
>>>>>> 4.1 b01. That gets the tests running, but a third of them fail with a
>>>>>> class
>>>>>> loading problem: A ClassFormatError is thrown with "Truncated class
>>>>>> file".
>>>>>> This seems to be due to a missing
>>>>>> java/lang/reflect/JTRegModuleHelper.class.
>>>>>> I suspect that this requirement was introduced with the module system
>>>>>> that
>>>>>> was integrated a few weeks ago.
>>>>>>
>>>>>> So, how do I get a version of jtreg that works with the latest JDK9?
>>>>>>
>>>>>> BTW. It looks like the jtreg build
>>>>>> (https://adopt-openjdk.ci.cloudbees.com/job/jtreg/) is failing
>>>>>> because
>>>>>> of a
>>>>>> missing dependency on testng.
>>>>>>
>>>>>> Help much appreaciated,
>>>>>> Carsten
>>>>>>
>>>>>
>>>>> The version of jtreg available on cloudbees.com has the following
>>>>> entry
>>>>> in
>>>>> its MANIFEST.MF,
>>>>>
>>>>>      jtreg-Build: tip
>>>>>
>>>>> and jtreg is naively assuming it to be of the form
>>>>>      jtreg-Build: b<integer>
>>>>>
>>>>> I can make jtreg be more tolerant, but I also also note that the binary
>>>>> is
>>>>> missing lib/asmtools.jar, which is required by some tests.  The
>>>>> contents
>>>>> of
>>>>> the tar bundle are all dated 25 January 2016, 10:47 which is somewhat
>>>>> suspicious.
>>>>>
>>>>> -- Jon
>>>>>
>>>>
>>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/jtreg-use/attachments/20160611/a9eef81d/attachment.html>


More information about the jtreg-use mailing list