Tomcat 11 Resolution Failure in Java Buildpack
search cancel

Tomcat 11 Resolution Failure in Java Buildpack

book

Article ID: 448296

calendar_today

Updated On:

Products

VMware Tanzu Platform Core

Issue/Introduction

When attempting to configure Tomcat 11 in the Java Buildpack using the configuration JBP_CONFIG_TOMCAT '{"tomcat": {"version": "11.+"}}', the deployment fails at the staging phase with the following error:

Unable to resolve version '11.+'

Environment

Java buildpack 4.x

Cause

Tomcat 11 is not supported by the Java Buildpack's default OSS Tomcat container. Broadcom's hosted Tomcat repository for the buildpack only publishes and maintains versions in the 9.+ and 10.1.+ lines (as defined in config/tomcat.yml).

Resolution

Tomcat 11 is planned to be added to Java buildpack commercial release 5.0. 

If Tomcat 11 functionality is required at this point, you can implement one of the two workarounds below.

Option 1: Self-Hosted Repository (Unsupported / Customer-Owned)

You can host your own Tomcat 11 build behind a repository index and point the buildpack directly to it.
Note: This approach requires you to build, host, and patch the Tomcat 11 binary yourself. Broadcom does not test, build, or support this configuration.
Direct Repository Root Configuration:

JBP_CONFIG_TOMCAT: '{"tomcat": {"version": "11.+", "repository_root": "https://your-repo/tomcat"}}'

External Configuration Overlay:
Alternatively, supply it as an external configuration overlay, which extracts on top of the base install after staging and can overwrite it entirely:

JBP_CONFIG_TOMCAT: '{"tomcat": {"external_configuration_enabled": true}, "external_configuration": {"repository_root": "https://your-repo/tomcat-config"}}'

Option 2: tc Server 11 / tcRuntime 11 (Broadcom-Supported)

Enable the buildpack's commercial tc Server container instead of the default OSS Tomcat. This option includes tcRuntime 11, which is a Broadcom-patched build equivalent to OSS Tomcat 11 that includes the latest CVE fixes.
Requires Java Buildpack version v4.85.0+

JBP_CONFIG_TC_SERVER: '{ enabled: true, tc_server: { version: "11.+" } }'