CODETOOLS-7902083: Simplify building jtreg

Jonathan Gibbons jonathan.gibbons at oracle.com
Thu Dec 14 00:32:31 UTC 2017


This is for folk who are interested in building jtreg from source.

As some of you have (rightfully) commented over the past years, jtreg 
has not been an easy tool to build from source.

And, as some of you may have noticed, there has been some amount of 
activity over the past weeks and months to address this issue. This work 
has been led by Erik Helin (thanks, Erik!) and we're now getting to the 
point where we can show what we have been working towards.

The core of the work to build jtreg is still the Makefiles as before, 
although as was recently noted, we've been simplifying the specification 
of the dependencies.

Separately, Erik has helped provide updates to the way that some of the 
Code Tools dependencies can be built.

Building on all that work, we can now get to the next stage, to provide 
a script that will download binaries for some components (JUnit, TestNG) 
and will download and build source for other components (AsmTools, JCov, 
JTHarness), for which there are no official binaries.

To run the script, you just need to have Ant and a suitable "java" on 
your path, and to specify the location of an install of JDK 1.8 as an 
argument to the script. wget is used to download files, which honors 
proxy settings for those that need to use them. The script is 
deliberately fairly simple, and suitable for use in a CI system.

You can see a webrev for the script at
http://cr.openjdk.java.net/~jjg/7902083/webrev.00/

Example of use:

$ which ant
/opt/ant/1.9.4/bin/ant
$ which java
/opt/jdk/1.8.0/bin/java
$ sh make/build-all.sh /opt/jdk/1.8.0
... build output ...
$ ls build/images/jtreg
bin  COPYRIGHT  doc  legal  lib  LICENSE  README  release
$


Once this settles down a bit, I'll update the public docs on the jtreg 
web pages.

-- Jon




More information about the code-tools-dev mailing list