These tarballs are automatically generated from the OpenJDK repositories at hg.openjdk.java.net. Seeding the local copy with these tarballs is usually much faster than Mercurial transfer from US West coast, especially if you are in Europe, especially if you are checking out the large monorepo JDK 10+.
On the up side, many repositories have moved to GitHub, so please pull from there. This page has the repositories that have not been moved (yet?).
Archive names are derived from the names of the tracked repositories. Tarballs are updated at least monthly, using the workspace-pack-*.sh scripts below. Don't forget to "hg pull" to get the latest changesets after unpacking the tarball. By default, the archive contains only the Mercurial metadata, use "hg update" to materialize the working copy.
The workspaces defaults its parent path to the upstream repository, over the https. This allows anonymous access to the repository. If you want to push to OpenJDK repository, then add "default-push" clause to your .hg/hgrc, like this:
$ cat .hg/hgrc [paths] default = https://hg.openjdk.java.net/[repo-path] default-push = ssh://[your-openjdk-id]@hg.openjdk.java.net/[repo-path]
Builds require a few build dependencies. Configure script usually tells what dependencies to install on the concrete OS flavor. On recent Debian/Ubuntu, this should be enough:
$ sudo apt install build-essential libx11-dev libxext-dev libxrender-dev \ libxtst-dev libxt-dev libcups2-dev libfontconfig1-dev \ libasound2-dev libfreetype6-dev libpng-dev autoconf
Example to checkout and build JDK 8u or derivatives:
$ curl https://builds.shipilev.net/workspaces/jdk8u-jdk8u.tar.xz | tar xJf -; \ cd jdk8u-jdk8u; \ hg pull; hg up; \ bash common/bin/hgforest.sh pull; bash common/bin/hgforest.sh up; \ bash ./configure; \ make images; \ build/linux-x86_64-normal-server-release/images/j2sdk-image/bin/java -version
Example to checkout and build JDK 10+ or derivatives:
$ curl https://builds.shipilev.net/workspaces/jdk-updates-jdk11u.tar.xz | tar xJf -; \ cd jdk-jdk; \ hg pull; hg up; \ bash ./configure; \ make images; \ build/linux-x86_64-*server-release/images/jdk/bin/java -version
Depending on your environment, "configure" might require a few options that deal with compiler warnings on too old or too new toolchains. The #YOLO option is most probably --disable-warnings-as-errors or --with-extra-cflags=-Wno-error.
|File Name ↓||File Size ↓||Date ↓|
|workspace-pack-hg-base.sh||2.0 KiB||2020-Oct-01 10:44|
|workspace-pack-hg-8.sh||3.5 KiB||2021-Oct-01 00:36|
|workspace-pack-hg-10.sh||2.8 KiB||2021-Jul-01 09:14|
|shenandoah-jdk8.tar.xz||232.4 MiB||2021-Oct-01 00:17|
|jdk8u-jdk8u.tar.xz||221.6 MiB||2021-Oct-01 00:24|
|jdk8u-jdk8u-dev.tar.xz||221.6 MiB||2021-Oct-01 00:30|
|icedtea7-forest-2.6.tar.xz||154.5 MiB||2021-Jul-01 00:00|
|aarch64-port-jdk8u-shenandoah.tar.xz||232.9 MiB||2021-Oct-01 00:48|
|aarch32-port-jdk8u.tar.xz||222.8 MiB||2021-Oct-01 00:36|
|SHA1SUMS||657 B||2021-Oct-24 17:25|