Windows
Install new Java version
Follow instructions to install Java: Install Java
Update JAVA_HOME
If you have set the environment variable JAVA_HOME, check whether this needs updating. Commonly this will be automatically updated by the installation process.
Update service wrapper
Find the file jvm.dll
in the Java installation.
Java 8: this will be in
JAVA_HOME\jre\bin\server\jvm.dll
Java 11: this will be at
JAVA_HOME\bin\server\jvm.dll
Open Tomcat Properties window. If you need further details on how to open this, see: Tomcat start/ stop, open properties
Go to the Java tab. Update the Java Virtual Machine setting to the new location of jvm.dll
.
Remove old version
Installation of a new patch of Java should remove the previous version, but you should confirm that the previous version has been removed by examining the list of installed programs.
If you are migrating to a new major version of Java (e.g. you are moving from Java 8 to Java 11), you will need to remove the previous version from the list of installed programs.
Linux
Install new Java version
Follow instructions to install Java: Install Java
Update JAVA_HOME
If you have followed the standard installation instructions, you have already done this.
Update service script
Open the tomcat service script at /etc/systemd/system/tomcat.service
Update JAVA_HOME
in the script to the value of $JAVA_HOME
in your environment. You must make this the full path for the Java installation, you cannot refer to the environment variable in the script. The resulting file will look similar to this:
[Unit] Description=Apache Tomcat Web Application Container After=network.target [Service] Type=forking Environment=JAVA_HOME=/opt/jdk/jdk-11.0.13+8 Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid Environment=CATALINA_HOME=/opt/tomcat Environment=CATALINA_BASE=/opt/tomcat
Remove old version
Delete the previous installation
cd /opt/jdk sudo rm -r [PREVIOUS VERSION]
For example
sudo rm -r /opt/jdk/jdk-11.0.13+8