Zulu Release 8.9 August 25, 2015
Zulu Release Notes 1 Zulu Release Notes 3 Azul Zulu Overview 5 Target Operating Environments 6 Tested and Validated Platforms 6 System Requirements 7 Zulu Supported Platforms 7 Deployment Architectures, JDK Versions, and Hardware 8 Deployment Architecture 8 JDK Versions 8 Hardware 8 Running Zulu 8 Deployment Targets 8 Performance and Standards 9 Zulu Commercial Compatibility Kit 9 Zulu Cryptography Extension Kit 9 Troubleshooting Tips 9 Preparation Tips 9 VM Property Override 9 JRE-only Tips 9 Open Product Issues 10 Support Information 10 Release Details 10 Zulu 8.9 Release 11 Azul Systems Confidential and Proprietary 2
Zulu 8.8, 7.11, and 6.9 Release 11 Zulu 8.7, 7.10, and 6.8 Release 12 Zulu 7.9 Release 12 Zulu 8.6 Release 12 Zulu 8.5, 7.8, and 6.7 Release 13 Zulu 8.4, 7.7, and 6.6 Release 13 Zulu 8.3 Release 14 Zulu Commercial Compatibility Kit 8.0, 7.0, and 6.0 Release 14 Zulu 8.2, 7.6, and 6.5 Release 14 Zulu 7.5 Release 15 Zulu 8.1 and 7.4 Mac OS X Release 15 Zulu 8.1, 7.4, and 6.4 Release 15 Zulu 8.0 Release 16 Zulu 7.3 and 6.3 Release 16 Zulu 7.2 and 6.2 Release 16 Zulu 7.1 Release 17 Zulu 7.0 Release 17 Zulu Release Notes Zulu Release 8.9 August 25, 2015 Azul Systems Confidential and Proprietary 3
Zulu Release Notes 1 Zulu Release Notes 3 Azul Zulu Overview 5 Target Operating Environments 6 Tested and Validated Platforms 6 System Requirements 7 Zulu Supported Platforms 7 Deployment Architectures, JDK Versions, and Hardware 8 Deployment Architecture 8 JDK Versions 8 Hardware 8 Running Zulu 8 Deployment Targets 8 Performance and Standards 9 Zulu Commercial Compatibility Kit 9 Zulu Cryptography Extension Kit 9 Troubleshooting Tips 9 Preparation Tips 9 VM Property Override 9 JRE-only Tips 9 Open Product Issues 10 Support Information 10 Release Details 10 Zulu 8.9 Release 11 Azul Systems Confidential and Proprietary 4
Zulu 8.8, 7.11, and 6.9 Release 11 Zulu 8.7, 7.10, and 6.8 Release 12 Zulu 7.9 Release 12 Zulu 8.6 Release 12 Zulu 8.5, 7.8, and 6.7 Release 13 Zulu 8.4, 7.7, and 6.6 Release 13 Zulu 8.3 Release 14 Zulu Commercial Compatibility Kit 8.0, 7.0, and 6.0 Release 14 Zulu 8.2, 7.6, and 6.5 Release 14 Zulu 7.5 Release 15 Zulu 8.1 and 7.4 Mac OS X Release 15 Zulu 8.1, 7.4, and 6.4 Release 15 Zulu 8.0 Release 16 Zulu 7.3 and 6.3 Release 16 Zulu 7.2 and 6.2 Release 16 Zulu 7.1 Release 17 Zulu 7.0 Release 17 Azul Zulu Overview Azul Zulu is a Java Development Kit (JDK), and a compliant implementation of the Java Standard Edition (SE) specification that contains all the Java components needed to build and run Java SE applications. Zulu 8.x, Zulu 7.x, and Zulu 6.x have been verified by passing all tests in the respective Java SE versions, (Java SE 8, Java SE 7, Java SE 6), of the OpenJDK Community Technology Compatibility Kit (TCK). These release notes describe requirements, changes, and known and fixed issues in Zulu versions 8.8, 7.11, and 6.9.. Java SE Certified is a certification mark of the Java Community Project. Azul Systems Confidential and Proprietary 5
Target Operating Environments In order to remain current, each Zulu release targets reasonably current Microsoft Windows, Linux, and Apple Mac OS X operating environments. Most of the Zulu JDK is "pure" OpenJDK native binary with direct dependence on the underlying operating system. The chief dependence is on the native OS runtime and processor family architecture. Java API class library portions and sample applications are common to all operating environments. You must select the Zulu architecture to match your OS architecture, download either the Zip or install package for that platform, and run the Zulu installer package or unpack the Zip file. In general, Zulu 8.x provides a Java Standard Edition 8 package, Zulu 7.x provides a Java Standard Edition 7 package, and Zulu 6.x provides a Java Standard Edition 6 package, each with associated Java source compiler, runtime JVM, API classfile hierarchy, and JDK tools. Zulu as a whole is targeted as a self-contained complete package suitable for deployment into modern, production-grade server OS environments, many popular desktop OS configurations, and virtualized OS contexts running under hypervisors provisioned on premise or in the cloud. Functionality meets the corresponding OpenJDK version and update level for the respective Java Standard Edition. There are many different implementations of kernel, core OS, and patches atop a variety of Windows, Linux, and Mac OS X operating system distributions. Azul focuses testing on a handful of popular combinations of operating systems and deployment contexts; these are our reference platforms. Zulu undoubtedly runs fine in many operating environments beyond the reference platforms Azul tests as long as Zulu architecture matches OS architecture. However, since we do not systematically test them, we cannot vouch for them. Problems encountered when running Zulu on a non-reference platform might not be immediately rejected, though those recreated on a reference platform will be given higher priority than problems with running Zulu outside reference platforms. Note: Application Guard contexts through paid support are considered equal in priority to reference platforms. Tested and Validated Platforms Zulu is tested and validated on the following reference platforms (this list is updated over the course of the release cycle): Windows Operating Systems Windows Server versions: 2016, 2012 R2, 2012, and 2008 R2 Windows Client versions: 10, 8.1, and 7 Hardware: x86 64-bit Zulu architecture: Java SE 8 64-bit, Java SE 7 64-bit, Java SE 6 64-bit Red Hat Enterprise Linux Operating Systems RHEL versions: 7.1, 7.0, 6.5, 6.4 Hardware: x86 64-bit Zulu architecture: Java SE 8 64-bit, Java SE 7 64-bit, Java SE 6 64-bit SUSE Linux Enterprise Server Operating Systems Azul Systems Confidential and Proprietary 6
SLES versions: 11 SP3 Hardware: x86 64-bit Zulu architecture: Java SE 8 64-bit, Java SE 7 64-bit, Java SE 6 64-bit Ubuntu Long Term Support Operating Systems Ubuntu LTS versions: 14.04 LTS, 12.04 LTS Hardware: x86 64-bit Zulu architecture: Java SE 8 64-bit, Java SE 7 64-bit, Java SE 6 64-bit Debian Operating Systems Debian versions: 7.0 (Wheezy) Apple Mac OS X Operating Systems Mac OS versions: 10.10 (Yosemite), 10.9 (Mavericks) Hardware: x86 64-bit Zulu architecture: Java SE 8 64-bit and Java SE 7 64-bit System Requirements Zulu is a full Java SE Development Kit, consisting of a Java language source compiler (javac), Java Class Library (JDK), a Java Virtual Machine (HotSpot) and a Java runtime (JRE) with Java monitoring tools. Zulu can run Java SE applications in a headless server mode or headful graphical mode. Zulu runs on Windows Server, Windows Client, on Linux server variants, and on Mac OS X, in each of bare OS, virtualized, and cloud deployment topologies. Zulu Supported Platforms Linux: RHEL 7.0 or later, 6.0 or later, and 5.2 or later SLES 12, 11 SP1, SP2, and SP3 CentOS 7.0 or later, 6.0 or later, and 5.2 or later Ubuntu 14.04 LTS, 12.04 LTS, and 10.04 LTS Debian Jessie (testing), 7.0 (Wheezy), and 6.0 (Squeeze) Oracle Linux 7 or later, 6.6 or later Windows Server: 2016, 2012 R2, 2012, and 2008 R2 Windows Client: 10, 8.1, 8, and 7 Mac OS X: 10.10 (Yosemite) and 10.9 (Mavericks) Azul Systems Confidential and Proprietary 7
Minimum platform versions: Linux with glibc 2.5, Windows Server 2008 R2, Windows Client 7, or Mac OS X 10.9 (Mavericks). Deployment Architectures, JDK Versions, and Hardware Zulu works with the deployment architectures, JDK versions, and hardware listed below. Deployment Architecture Bare OS: server, desktop, and laptop (server-class systems recommended) Hypervisors: Docker, VMware, Hyper-V, KVM Cloud: Microsoft Azure (VM and VHD), Amazon AWS (EC2 and S3), Rackspace JDK Versions Java SE 8: Linux, Windows, and Mac OS X installations Java SE 7: Linux, Windows, and Mac OS X installations Java SE 6: Linux and Windows installations Hardware Intel x64 Running Zulu Deployment Targets Zulu offers a stable JDK development kit, and runtime JVM runtime for server applications authored in Java. For production environments, Zulu works in bare OS, virtualized OS, or cloud hosted contexts. Zulu implements the Java SE standard, so can be used in any application architecture that likewise adheres to Java SE standards. Zulu does not implement the Java Enterprise Edition (JEE) specification; however Zulu can be used as runtime core for containers and services that do implement JEE functionality. Zulu also does not implement Java Platform, Micro Edition (Java ME) or Java FX, and it does not have a browser plugin or Java Network Launching Protocol (JNLP). In development or testing environments, Zulu supplies base tools for debugging and runtime inspection, as well as the Java source code compiler (javac). Configure Zulu to host your target under test to further ensure consistency with your production deployments. Cloud deployments in both Azure (VM and VHD) and Amazon (EC2 or S3) involve installing Zulu onto hosted virtual machine instances. Once you create a virtual machine instance, you can clone the VM and reuse Zulu in each instance. In Azure, Zulu systems appear in the Azure portal as Gallery items, able to instantiate new virtual machines with Zulu preinstalled. Zulu also is an installable component within the Azure Web Platform Installer (WebPI) configuration tool. Further, Zulu is a selectable deployment target when using an Eclipse workbench that has the Azure SDK plugin installed. See the Zulu Installation Guide for more cloud deployment details. Azul Systems Confidential and Proprietary 8
Performance and Standards JVM runtime performance varies with workload and set of enabled flags, but in general should match OpenJDK and remain comparable to other OpenJDK derived JVMs. Other vendor specific optimizations, extensions, or responses based on non-standard X or XX variables have no guarantee of working inside Zulu unless they already also work in base OpenJDK. Zulu Commercial Compatibility Kit The Zulu Commercial Compatibility Kit (Zulu CCK) provides non-open source enhancements to Zulu 8, Zulu 7, and Zulu 6. It includes its own licensing. Zulu CCK features include: support for Monotype fonts. See the Zulu Installation Guide for more Zulu CCK details. Zulu Cryptography Extension Kit The Zulu Cryptography Extension Kit ("Zulu CEK") provides pluggable policy JAR files to set the effective cryptographic level for the whole JDK/JRE. Zulu ships with strong (128 bit) encryption, the standard level for OpenJDK. The Zulu CEK provides an upgrade to 'unlimited' key sizes. The Zulu CEK consists of one file named ZuluJCEPolicies.zip and is independent of platform and Java level, so it can be applied to any Zulu installed set. See the Zulu Installation Guide for more Zulu CEK details. Troubleshooting Tips The Azul Community site contains a running list of recent tips. The following is a brief list of common trouble points: Preparation Tips Ensure your PATH and JAVA_HOME variables are set accurately in the shell or context of your runtime application. Crosstalk with other installed JVMs leads to aberrant, often random unwanted behaviors. Ensure you have the proper Zulu architecture for your OS and kernel. Using incorrect processor type or bitness may fail to operate at all. VM Property Override Some applications may expect particular VM property string values, such as vendor, set to values different from OpenJDK defaults. Zulu provides the XX:+OverrideVMProperties argument to allow new property values. Use -XX:+OverrideVMProperties with a -D option for the property to be overridden. For example: -XX:+OverrideVMProperties -Djava.vm.vendor="CompanyName" JRE-only Tips Zulu builds are generally visible to monitoring tools by default. In JRE-only Zulu builds, monitoring tools may be invisible. This is due to the -XX:-UsePerfData flag default setting to off for JRE-only builds. Azul Systems Confidential and Proprietary 9
To resolve this issue, run the target JRE with -XX:+UsePerfData. This enables monitoring tools to see the Java instance. Open Product Issues Amazon Linux AMI: If you are using Amazon Linux VMs as your Linux machines, download Zulu from the Azul website instead of the Azul repository. Review the forum entry for news on workarounds and fixes. Windows: Observed hang issue with Maven projects launched under Eclipse. See the detailed explanation and workaround for the Eclipse bug. Applies to: all Zulu releases. JDK 6 on RHEL 7: If you are running JDK 6 on a RHEL 7 system, install the libpng12.x86_64 library. For example, type: # sudo yum install libpng12.x86_64 Zulu RPM Installers on SLES 11.3: Using the Zulu.rpm installer on a SLES 11.3 system requires RPM version 4.8 or later. Workaround: Use the Zulu.zip installer or upgrade your RPM to 4.8 or later. Support Information For more information on Zulu, please visit the Azul website at one of the following locations: Zulu Documentation: http://www.azulsystems.com/zuludocs Zulu Community: http://www.azulsystems.com/community Release Details The following subsections provide a summary of the enhancements applied to each release. Note: Maintenance fixes are cumulative within each major Java release family. Zulu 8.9 Release Zulu 8.8, 7.11, and 6.9 Release Zulu 8.7, 7.10, and 6.8 Release Zulu 7.9 Release Zulu 8.6 Release Zulu 8.5, 7.8, and 6.7 Release Zulu 8.4, 7.7, and 6.6 Release Zulu 8.3 Release Zulu Commercial Compatibility Kit 8.0, 7.0, and 6.0 Release Zulu 8.2, 7.6, and 6.5 Release Azul Systems Confidential and Proprietary 10
Zulu 7.5 Release Zulu 8.1 and 7.4 Mac OS X Release Zulu 8.1, 7.4, and 6.4 Release Zulu 8.0 Release Zulu 7.3 and 6.3 Release Zulu 7.2 and 6.2 Release Zulu 7.1 Release Zulu 7.0 Release Zulu 8.9 Release Released 2015 August OpenJDK 8 This release provides accumulated fixes reflecting August 2015 OpenJDK 8 changes. New Java levels updated on all platforms. Updates for Java SE 8 Java Levels: Java SE 8, update 60 Added platform support Added support for Windows Server 2016 and Windows Client 10 on x64 Intel systems. Zulu 8.8, 7.11, and 6.9 Release Released 2015 July. OpenJDK 8, 7, and 6 This release provides accumulated security fixes reflecting July 2015 OpenJDK changes. New Java levels updated on all platforms. Updates for Java SE 8 Java Levels: Java SE 8, update 51 Java Levels: Java SE 7, update 85 Updates for Java SE 6 Java Levels: Java SE 6, update 69 Added platform support Azul Systems Confidential and Proprietary 11
Red Hat Linux 7.1 Other Changes Dual FreeType licenses added to Zulu third party license documents. Font.config files added to jre/lib to resolve NullPointerException. Added entries to jre/lib/security/cacerts to permit Eclipse 4.5 Oomph to install. jhiccup removed from all Zulu packages. Get latest jhiccup from the jhiccup site. Zulu 8.7, 7.10, and 6.8 Release Released 2015 May. OpenJDK 8, 7, and 6 This release provides accumulated security fixes reflecting May 2015 OpenJDK changes. New Java levels updated on all platforms. Updates for Java SE 8 Java Levels: Java SE 8, update 45 Java Levels: Java SE 7, update 80 Updates for Java SE 6 Zulu 7.9 Release Released 2015 May. Java Levels: Java SE 6, update 63 Java Levels: Java SE 7, update 79 Zulu 8.6 Release Released 2015 March. Updates for Java SE 8 Java Levels: Java SE 8, update 40, for Linux and Windows Added platform support Oracle Linux 7 and 6.6 Azul Systems Confidential and Proprietary 12
Zulu 8.5, 7.8, and 6.7 Release Released 2015 January. OpenJDK 8, 7, and 6 This release provides accumulated security fixes reflecting January 2015 OpenJDK changes. New Java levels updated on all platforms. Updates for Java SE 8 Java Levels: Java SE 8, update 31 Java Levels: Java SE 7, update 76 Updates for Java SE 6 Java Levels: Java SE 6, update 59 Added platform support SUSE 12 and RHEL 6.6 Zulu 8.4, 7.7, and 6.6 Release Released 2014 October. OpenJDK 8, 7, and 6 This release provides accumulated security fixes reflecting October 2014 OpenJDK changes. New Java levels updated on all platforms. Updates for Java SE 8 Java Levels: Java SE 8, update 25 Java Levels: Java SE 7, update 72 Updates for Java SE 6 Java Levels: Java SE 6, update 56 Added platform support Mac OS X. Version 10.10 (Yosemite). Intel x86-64. Debian. Compatible on Jessie (testing), 7.0 (Wheezy), and 6.0 (Squeeze). Intel x86-64. Azul Systems Confidential and Proprietary 13
Zulu 8.3 Release Released 2014 September. Updates for Java SE 8 Java Levels: Java SE 8, update 20 Docker installation support This release added a Docker registry installation option for Linux operating systems. Zulu Commercial Compatibility Kit 8.0, 7.0, and 6.0 Release Released 2015 August. Initial release This release adds support for the Zulu Commercial Compatibility Kit (Zulu CCK). Font support This release adds support for installing Monotype fonts. Zulu 8.2, 7.6, and 6.5 Release Released 2014 August. Microsoft Azure support This release adds support for Azure Preview Gallery, adding virtual hard drives (VHD) with pre-installed Zulu 7 or Zulu 8, each on a Microsoft Windows operating system. Linux version support This release adds support for RHEL 7.0 and Ubuntu 14.04 LTS. Mac DMG package support This release adds a DMG installation packaging option for the Mac OS X operating systems. OpenJDK 8, 7, and 6 This release provides accumulated security fixes reflecting July 2014 OpenJDK changes. New Java levels updated on all platforms. Updates for Java SE 8 Java Levels: Java SE 8, update 11 Azul Systems Confidential and Proprietary 14
Java Levels: Java SE 7, update 65 Updates for Java SE 6 Java Levels: Java SE 6, update 53 Zulu 7.5 Release Released 2014 July. Java Levels: Java SE 7, update 60 Zulu 8.1 and 7.4 Mac OS X Release Released 2014 June. Mac OS X support Zulu now offers Mac OS X platform support through a.zip installer package. System support targeted for Mac OS X Mavericks (10.9) on Intel 64 hardware. Java update levels for Java SE 8, update 5 and Java SE 7, update 55. Zulu 8.1, 7.4, and 6.4 Release Released 2014 May. Debian Installer Zulu now offers Debian (*.deb) installer packages for Ubuntu and Debian Linux families. This is in addition to Zip, and can be used with Apt-Get (details below.) Yum Repository for RPM installation Azul now provides distribution of Zulu RPM packages via a Yum repository. See the Zulu Installation Guide for instructions. Apt-Get Repository for DEB installation Azul now provides distribution of Zulu DEB packages via an Apt-Get repository. See the Zulu Installation Guide for instructions. OpenJDK 8, 7, and 6 This release provides accumulated security fixes reflecting April 2014 OpenJDK changes. New Java levels updated on all platforms. Updates for Java SE 8 Java Levels: Java SE 8, update 5 Azul Systems Confidential and Proprietary 15
Java Levels: Java SE 7, update 55 Updates for Java SE 6 Zulu 8.0 Release Released 2014 April. Java Levels: Java SE 6, update 49 Initial release for Java SE 8 Zulu 8.0 represents the first Zulu offering on OpenJDK 8. Binaries for Windows and Linux are all validated against the Technology Compatibility Kit for Java Standard Edition 8.0. Packaging options include Zip, MSI, and RPM, the same as with Zulu 7.x and 6.x versions. Zulu 7.3 and 6.3 Release Released 2014 March. Java Levels: Java SE 7, update 51 Updates for Java SE 6 Java Levels: Java SE 6, update 47 Windows support: Windows Server 2012 R2, 2012, and 2008 R2. Windows Client 8.1, 8, and 7. Zip and MSI installers. Zulu 7.2 and 6.2 Release Released 2014 January. Zulu 7.2 for Windows represents an update from Zulu 7.0 and 7.1 for Java Standard Edition 7. New capability includes core OpenJDK revision to Java 1.7.0 update 45 and addition of Windows Server 2012 R2 as a supported platform. In addition to the Zip installer, a new MSI install file offers additional Zulu installation alternatives. Deployment contexts within the Azure Platform as a Service environment have been updated with the Zulu 7.2 Windows package. Linux support Zulu 7.2 and Zulu 6.2 for Linux represents the first public Zulu release adding Linux as a supported platform. Packages for Java 7 update 45 and Java 6 in both Zip and RPM install types represent new Zulu architectures and installer types. Azul Systems Confidential and Proprietary 16
Java Certification Zulu 7.2 passes the Technology Certification Toolkit (TCK) criteria for Java SE 7 and Zulu 6.2 passes the TCK criteria for Java SE 6. Reference platforms used for testing include RHEL 6.4, Windows 2012, and SLES 11 SP3, among others. In this respect Zulu 7.2 should remain drop-in compatible with applications using Oracle Hotspot, Oracle JRockit, IBM J9, and manually compiled OpenJDK for similar deployment OS contexts. Multiple version support Zulu installation sets remain independent of each other. As such, you may install the Zulu 7.2 fileset into its own filesystem location and leave prior Zulu instances in place. Be sure to adjust your PATH and/or JAVA_HOME environment values on your system, as needed, for each Zulu installed location. Azul jhiccup A copy of jhiccup, an open source tool from Azul for observing and quantifying pauses in Java programs, is included in a Zip file within the Zulu package. Unzip jhiccup to a writable folder, and follow its instructions for running jhiccup against any Zulu or any other JVM and for generating jhiccup charts with histograms of JVM latencies. Key Bug Fix Fix for JConsole startup. Zulu Core Zulu no longer limits itself to headless operation. Zulu by default handles headful mode on both Windows and Linux. OpenJDK Zulu adopted OpenJDK 7 u45 as the basis for Zulu build 7.2.1 and OpenJDK 6 u42 (representing u28 plus many updates) as the basis for Zulu build 6.2.0 Zulu 7.1 Release Released 2013 October. Java Levels: Java SE 7, update 40 Zulu 7.0 Release Released 2013 September. Initial Release Java Levels: Java SE 7, update 25 Azul Systems Confidential and Proprietary 17
Initial Azure version. 64-bit only. Windows 2012 and 2008 R2 support. Azul Systems Confidential and Proprietary 18