MID Server Java runtime - Information on Bundled and Compatible versions, Upgrading or ReplacingIssue <!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Since 2019 ServiceNow's own OpenJDK JRE build is bundled with MID Servers. Oracle licenses are not required. This OpenJDK JRE is what all MID Server-related release testing has been done with. It's the same build that instance app nodes run on, although the MID Server version tends to be ahead. Apart from the occasional important patch, the bundled JRE has been updated to a more recent version or patch with every major instance release. The bundled JRE does not have to be used (see resolution instructions at the end). You may have a requirement to use the latest Java patch instead, for security reasons, or because you need to customize the JRE and not have it overwritten at each upgrade. MID Server officially documents that it supports all Oracle and OpenJDK JREs, not just our own build and patch level, although only Java 17 should be used since Washington DC, and Java 21 since Australia. If there is a problem running ServiceNow features and code on a MID Server with one of those non-bundled JREs then it will still be treated as a product defect and we will try to provide a workaround or fix. Be prepared for Tech Support to ask you to temporarily switch back to the bundled ServiceNow OpenJDK build to confirm if the JRE version is relevant to the reported issue or not. If custom JavaScript or imported Java classes no longer work in the MID Server platform after ServiceNow upgrades or patches to the JRE, customers or 3rd party vendors are responsible for maintaining those scripts or upgrading those additional external java classes to be compatible with current Java requirement. The agent\lib\dependencies.txt file lists which 3rd party java libraries are part of the MID Server platform, with their versions. MID Server Installer Java RuntimeAustralia A ServiceNow build of OpenJDK 21.0.7 is bundled (21.0.7-sncmid1) Australia Patch 0 (EA1) MID Server JREs:Windows x86-64 mid-jre.zurich-07-01-2025__patch0-07-15-2025_07-23-2025_1759.windows.x86-64.zipLinux x86-64 mid-jre.zurich-07-01-2025__patch0-07-15-2025_07-23-2025_1759.linux.x86-64.zip Zurich A ServiceNow build of OpenJDK 17.0.15 is bundled (17.0.15-sncmid1) Zurich Patch 0 (CA) MID Server JREs:Windows x86-64 mid-jre.zurich-07-01-2025__patch0-07-15-2025_07-23-2025_1759.windows.x86-64.zip Linux x86-64 mid-jre.zurich-07-01-2025__patch0-07-15-2025_07-23-2025_1759.linux.x86-64.zip Yokohama A ServiceNow build of OpenJDK 17.0.12 is bundled (17.0.12-sncmid1)Starting with the Yokohama release, the MID Server is compiled using Java 17 and is incompatible with any Java version below 17 for runtime execution. See KB1704368 MID Server JRE Minimum Version Requirement Update to JRE 17 Starting from Yokohama Release for information about mandatory procedures before upgrading the instance. Xanadu A ServiceNow build of OpenJDK 17.0.10 is bundled (17.0.10-sncmid1) Washington DC A ServiceNow build of OpenJDK 17.0.8.1 is bundled (17.0.8.1-sncmid1) Administrators will need to make sure any 3rd party JAR files for Credential resolvers, JDBC drivers, etc. are compatible with Java 17 and 'strong encapsulation', before upgrading.More information: KB1273036 MID Server - JRE 17 Upgrade Vancouver Patch 4 (GA) A ServiceNow build of OpenJDK 11.0.20.1 is bundled (11.0.20.1-sncmid1) Vancouver Patch 1 (GA) A ServiceNow build of OpenJDK 11.0.16.1 is bundled (11.0.16.1-sncmid1) Note: The GA release of Vancouver reverted back to Java 11 due to CVE-2022-45146 in BCFIPS 1.0.2.jar with Java 17. Vancouver Patch 0 (EA) A ServiceNow build of OpenJDK 17.0.5 was planned for Vancouver, but reverted to Java 11 for the General Availability (GA) release. Utah A ServiceNow build of OpenJDK 11.0.16.1 is bundled (11.0.16.1-sncmid1) KB1124078 MID Server JRE version minimum requirement change to JRE 11 from Utah release onwards TLS 1.1 and below will no longer be supported. An email was sent out on 2022-02-14, with subject "MID Server support notification: Be informed".For workaround see: KB1006178 - Issue with discovering certain certificates via "11.0.12" JRE mid mid-jre.utah-12-21-2022__patch2-03-30-2023_04-10-2023_1543.windows.x86-64.zipmid-jre.utah-12-21-2022__patch2-03-30-2023_04-10-2023_1543.linux.x86-64.zip You can confirm the Java version of your MID Server install by looking in this file:<install path>\agent\jre\release Symptoms<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Facts<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Release<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } all Cause<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Resolution<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Changing to your JRE If you chose to use your own Oracle/OpenJDK JRE with the MID Server, perhaps to use a more recent patch, then follow these instructions: Using the vendor's own instructions, Install the JRE in the normal way but be sure to install it outside of the MID Server's "agent" install folder. MID Server upgrades can replace anything included within the agent folder, and do regularly delete and replace everything in the bundled JRE's agent/jre/ folder.Edit the agent/conf/wrapper-override.conf file to tell the MID Server to use the newly installed external JRE. (Use Wordpad and not Notepad on windows, as this is a Unix format file)Restart the MID Server service. ################################################################################# External JRE################################################################################# Uncomment and edit if an external JRE is preferred. By default,# the internal JRE distribution is used.## OPTIONAL: The path (relative to agent dir or absolute) to the java binwrapper.java.command=C:\ServiceNow_MID_Servers\OpenJDK\8u251\jre\bin\java Warnings: You are now responsible for keeping the JRE maintained. ServiceNow upgrades will not touch this JRE.If you customize the JRE, perhaps by swapping .jar files within the JRE for different versions, then this JRE will no longer be supported by servicenow.If you have added certificates to the Java Keystore, .\agent\jre\lib\security\cacerts, then that file will need copying to the equivalent folder in your new JRE, or integrations, including the connection to the instance, may not work due to MID Security Policy errors..Search the knowledge base for known problems with compatibility with the versions you intend to use. The list above only lists some main ones known to the author. Changing it back to the bundled Open JDK JRE If you no longer want to use your own OpenJDK JRE with the MID Server, then follow these instructions: Edit the agent/conf/wrapper-override.conf file to comment out the wrapper.java.command line. Without that override, the same read only property in the wrapper.conf file will tell the MID Server to use the bundled OpenJDK JRE. (Use Wordpad and not Notepad on windows, as this is a Unix format file)Restart the MID Server service. #wrapper.java.command=C:\ServiceNow_MID_Servers\OpenJDK\8u251\jre\bin\java Related Links<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } }