Install Azul Zulu on Windows
This section explains how to install Azul Zulu builds of OpenJDK on Windows.
Install Azul Zulu with MSI installer
Note
|
For per-machine installation, you must have administrator privileges to run the .msi installer.
|
When running an Azul Zulu MSI installer, you can select the features that you want to enable and/or change the installation folder.
Optional features include:
-
Add to PATH - Adds the
<installation_folder>\bin
folder to the PATH environment variable. -
Set JAVA_HOME variable - (Not available in Azul Zulu 6 and 7) Sets the
JAVA_HOME
environment variable to point to the installation directory. -
JavaSoft (Oracle) registry keys - Overwrites JavaSoft (Oracle) registry keys (for details, see Azul Zulu registry keys).
Install using Setup Wizard
-
Double-click the downloaded
.msi
file to launch the Setup Wizard and follow the instructions in the wizard.The default installation folder is
C:\Program Files\Zulu\<zulu_dir>\
, where<zulu_dir>
depends on the type of package (JDK or JRE).Package Installation Folder Example JDK
zulu-<major_version>
zulu-11
JRE
zulu-<major_version>-jre
zulu-11-jre
-
To verify your Azul Zulu installation, run the following command:
<installation_folder>\bin\java -versionIf you chose to update the
PATH
environment variable during installation, simply run:java -versionYou should see output similar to the following:
openjdk version "11.0.10" 2021-01-19 LTS OpenJDK Runtime Environment Zulu11.45+27-CA (build 11.0.10+9-LTS) OpenJDK 64-Bit Server VM Zulu11.45+27-CA (build 11.0.10+9-LTS, mixed mode)
Install from Command Prompt
To install Azul Zulu MSI installer from a Command Prompt, follow these steps:
-
Open a command prompt or terminal window in the directory where you saved the
.msi
file. -
The general installation command looks like as follows:
msiexec /i <zulu_package>.msi ADDLOCAL=<feature1>,...,<featureN> INSTALLDIR="<absolute_path_to_dir>" /qnThe following features are available:
-
ZuluInstallation - installs Azul Zulu into the specified location
-
FeatureEnvironment - updates the PATH environment variable
-
FeatureOracleJavaSoft - updates the registry keys under the
HKLM\SOFTWARE\JavaSoft\
section -
FeatureJavaHome - sets the
JAVA_HOME
environment variable to point to the installation directory
To enable a specific feature, add the name of the feature to the
ADDLOCAL
parameter. For example, to install Azul Zulu and update the PATH environment variable, run the following command:msiexec /i zulu11.50.19-ca-jdk11.0.12-win_x64.msi ADDLOCAL=ZuluInstallation,FeatureEnvironment INSTALLDIR="c:\java\jdk11" /qn- Example 1
-
To install Azul Zulu into the default installation folder, run:
msiexec /i zulu11.50.19-ca-jdk11.0.12-win_x64.msi /qnNo optional features are selected.
- Example 2
-
To install Azul Zulu into the
c:\java\jdk11\
folder and addc:\java\jdk11\bin
to thePATH
environment variable, run:
msiexec /i zulu11.50.19-ca-jdk11.0.12-win_x64.msi ADDLOCAL=ZuluInstallation,FeatureEnvironment INSTALLDIR="c:\java\jdk11" /qn- Example 3
-
To install Azul Zulu and set the
JAVA_HOME
environment variable, run:
msiexec /i zulu11.50.19-ca-jdk11.0.12-win_x64.msi ADDLOCAL=ZuluInstallation,FeatureJavaHome INSTALLDIR="c:\java\jdk11" /qnTo verify that
JAVA_HOME
is set correctly, restart Command Prompt to update the list of environment variables and run:> echo %JAVA_HOME% C:\java\jdk11 -
Per-user installation
You can install Azul Zulu to be available only for a specific Windows user. This type of installation requires no administrator privileges and stores all the Azul Zulu files in the current user’s workspace. This installation type is added in the following Azul Zulu versions: 17.30, 15.36, 13.44, 11.52, 8.58, 7.50.
To install Azul Zulu only for the current Windows user, use the option MSIINSTALLPERUSER=1
as shown in the example below.
msiexec /i zulu11.52.13-ca-jdk11.0.13-win_x64.msi ADDLOCAL=ZuluInstallation,FeatureEnvironment MSIINSTALLPERUSER=1 /qn
When working with a per-user Azul Zulu instance, consider the following:
-
Avoid using per-user and per-machine Azul Zulu installations simultaneously if the two have identical major version but different minor versions (for example, Azul Zulu 8.54 and 8.56).
-
You cannot upgrade a per-user Azul Zulu installation to the per-machine type.
-
You cannot use the FeatureOracleJavaSoft option (updates Windows registry keys under
HKLM\SOFTWARE\JavaSoft\
) with the per-user installation. -
The system
PATH
environment variable takes precedence over the userPATH
. Thus, if a system has a per-machine and a per-user Azul Zulu instances both added to user/systemPATH
, calling Java from an arbitrary location runs the per-machine Azul Zulu instance.
Azul Zulu registry keys
During the installation, the MSI installer uses the registry to store path and version information.
The installer creates two sets of registry keys depending on the installation type:
-
per-machine installation creates Azul Zulu keys and Generic keys. Generic keys are typically created by Java installers and are used to ensure Azul Zulu is compatible with other tools such as Launch4j and WinRun4J.
-
per-user installation creates only Azul Zulu keys.
The table below shows the registry keys created during the installation of various types of Azul Zulu packages.
Binary type |
Azul Zulu keys |
Generic keys |
---|---|---|
Installation: per-machine |
||
JRE 64-bit |
HKLM\SOFTWARE\Azul Systems\Zulu\zulu-<version>-jre |
HKLM\SOFTWARE\JavaSoft\Java Runtime Environment |
JRE 32-bit |
HKLM\SOFTWARE\WOW6432Node\Azul Systems\Zulu 32-bit\zulu-<version>-jre |
HKLM\SOFTWARE\WOW6432Node\JavaSoft\Java Runtime Environment |
JDK 64-bit |
HKLM\SOFTWARE\Azul Systems\Zulu\zulu-<version> |
HKLM\SOFTWARE\JavaSoft\Java Development Kit |
JDK 32-bit |
HKLM\SOFTWARE\WOW6432Node\Azul Systems\Zulu 32-bit\zulu-<version> |
HKLM\SOFTWARE\WOW6432Node\JavaSoft\Java Development Kit |
Installation: per-user |
||
JRE 64-bit |
HKCU\SOFTWARE\Azul Systems\Zulu\zulu-<version>-jre |
N/A |
JRE 32-bit |
HKCU\SOFTWARE\Azul Systems\Zulu 32-bit\zulu-<version>-jre |
N/A |
JDK 64-bit |
HKCU\SOFTWARE\Azul Systems\Zulu\zulu-<version> |
N/A |
JDK 32-bit |
HKCU\SOFTWARE\Azul Systems\Zulu 32-bit\zulu-<version> |
N/A |
Where <version>
in zulu-<version>-jre
stands for the version of Azul Zulu, for example, zulu-11-jre
.
The MSI Installer creates registry keys during Azul Zulu installation and removes these keys during uninstallation. Please note that the MSI Installer creates the Generic keys only if Oracle Java has not yet been installed on the computer. If Java is already installed, this means that the keys exist, and the installer does not overwrite them.
Upgrade Azul Zulu
If you installed Azul Zulu using the MSI installer, you can upgrade it by following the same installation instructions. Note that you can upgrade within the same major version, for example from 8.52 to 8.54. If you install a different major version of Azul Zulu, such as 11, the installer does not remove the previous one but simply adds the new version to your machine.
Install Azul Zulu from ZIP or TAR.GZ package
-
Download the Azul Zulu
ZIP
orTAR.GZ
file from the Downloads page. -
Extract the content of the archive into a folder. This folder is your Azul Zulu installation folder.
-
To verify that the package was extracted correctly, run the following command from a command prompt. You should see output similar to the following:
> <installation_folder>\bin\java -version openjdk version "16" 2021-03-16 OpenJDK Runtime Environment Zulu16.28+11-CA (build 16+36) OpenJDK 64-Bit Server VM Zulu16.28+11-CA (build 16+36, mixed mode, sharing) -
(Optional) Add
<installation_folder>\bin
to yourPATH
system variable, so that you can executejava
from any directory without specifying the full path.To update the
PATH
system variable:
-
Open Control Panel and go to System and Security → System.
-
Click Advanced system settings.
-
On the Advanced tab, click the Environment Variables button.
-
In the System Variables area, select the
Path
environment variable and click Edit. -
In the dialog that opens, add the
bin
folder of your Azul Zulu installation (the directory where you unpacked the.zip
file). Make sure thebin
folder is placed at the top of the list as shown in the image below: