OpenJDK on AArch64: We have a release

We at the AArch64 Port Project are pleased to announce the first release of OpenJDK on the Linux/AArch64 platform.  It is the first implementation of the Java platform to be made available for this processor architecture.

For those who haven’t heard: AArch64 is the latest architecture from ARM.  It is an entirely new instruction set, not compatible with the earlier generation of 32-bit ARM processors, so we need a new OpenJDK port for it.

This is a complete port, with template interpreter and client and server JIT compilers.  We have JDK8 and JDK7 versions available for download now.  It will shortly be included in Fedora for AArch64. It is, of course, entirely free software, available under the GPL.

Source bundles are available from:
We will now to make plans to integrate this port with the main OpenJDK project.

Credit where credit is due:

We started this work at Red Hat almost two years ago with two Red Hat engineers, Andrew Haley and Andrew Dinn.  It became an OpenJDK project and we were joined by Linaro, who have been extremely helpful with testing, bug fixing, and keeping up with OpenJDK’s continuous updates. Many people have helped, but in particular I’d like to thank Edward Nevill for his support and tireless work.

Of course the work will go on: there is performance tuning to be done on real hardware and we need to do a lot more real-world testing.  In particular, we haven’t yet done work to optimize HotSpot for the Advanced SIMD and Cryptography units.  If you are interested in working on this exciting project or if you just want to chat about it, come over to .

Andrew Haley
OpenJDK AArch64 port Project Lead

Join the Red Hat Developer Program (it’s free) and get access to related cheat sheets, books, and product downloads.

  • Can I grab aarch64-port-jdk8-aarch64-992-b128.tar.xz and compile it to use on x64 arch?

    • andrewphaley

      Yes. There is a built-in AArch64 simulator that gets built if you’re using x86, so you don’t need to wait for real AArch64 boxes. See README.aarch64 in the top-level directory.