Making OpenJDK builds easier

Erwin Vervaet erwin.vervaet at ervacon.com
Wed Dec 1 16:21:17 UTC 2010


Hello all,

I'd like to bring up the topic of the ease of building the OpenJDK.

Let me start with a bit of background. I attended an interesting OpenJDK 
talk by Dalibor at Devoxx 2010 earlier this month and decided I should 
check out the OpenJDK project. This of course meant grabbing the source 
code and building it!

1) Grabbing the code
I immediately found info on how to install Mercurial and clone the 
Mercurial repo on openjdk.org. The Achilles heel here is of course the 
Forest extension. The main problem I had was finding Forest since the 
original Forest repo is no longer available 
(http://hg.akoha.org/hgforest/).

[Rant] This whole Forest deal feels a bit amateurish. Since Forest seems 
to be a discontinued project maybe the OpenJDK project should just grab 
control of it and let users download forest.py directly from openjdk.org 
itself? That would also allow the Forest installation instructions on 
openjdk.org to be simpler and more to the point [/Rant]

2) Building the code
Again I quickly found the "OpenJDK Build README" on openjdk.org 
(http://hg.openjdk.java.net/jdk7/build/raw-file/tip/README-builds.html) 
and prepped my system for a build. Doing 'make sanity' told me 
everything was fine, so I tried 'make'. This runs into a problem because 
the build needs to download jaxp/jaxws/jaf code drops from the Internet 
and this is not allowed by default. After a bit of googling I issued a 
'make ALLOW_DOWNLOADS=true' command. Next problem: the java.net download 
locations in the build system are fubar. After a bit more googling and 
investigation I patched two properties files (see attached patch) and 
now 'make ALLOW_DOWNLOADS=true' created my first OpenJDK 7 build!

[Rant] That problem with the java.net download locations should 
obviously be fixed (maybe the attached patch can be my first OpenJDK 
contribution ;-) Secondly, the "OpenJDK Build README" should mention the 
ALLOW_DOWNLOADS flag, or maybe ALLOW_DOWNLOADS should even be "true" by 
default. [/Rant]


My 2c:
The process of grabbing the source code and making your first OpenJDK 
should be as simple as possible. Making this super simple makes getting 
into OpenJDK hacking much more pleasant since you don't get bogged down 
in a bunch of stupid issues right from the start.


Erwin Vervaet


More information about the discuss mailing list