Skip to content

Spring Framework Versions

Sam Brannen edited this page May 8, 2021 · 53 revisions

This document describes new features, noteworthy changes, and provides guidance on upgrading from earlier versions. If you see anything missing or inaccurate, please submit a pull-request against individual pages, or create an issue.

Supported Versions

  • 5.3.x is the final feature branch of the 5th generation and the latest production line (GA as of October 2020), with long-term support to be provided (on JDK 8, JDK 11, and the upcoming JDK 17 LTS release expected in September 2021).
  • 5.2.x is the previous production line (GA as of September 2019), to be actively supported until the end of 2021.
  • 5.1.x and 5.0.x are not actively supported anymore, superseded by 5.2.x and 5.3.x as of December 2020.
  • 4.3.x reached its official EOL (end-of-life) on December 31st, 2020. No further maintenance and security patches are planned in that line.
  • 3.2.x reached its official EOL (end-of-life) on December 31st, 2016. No further maintenance and security patches are planned in that line.

At this point, we recommend upgrading to the latest Spring Framework 5.3.x release from Maven Central.

JDK Version Range

  • Spring Framework 5.3.x: JDK 8-17 (expected)
  • Spring Framework 5.2.x: JDK 8-15
  • Spring Framework 5.1.x: JDK 8-12
  • Spring Framework 5.0.x: JDK 8-10
  • Spring Framework 4.3.x: JDK 6-8

We fully test and support Spring on Long-Term Support (LTS) releases of the JDK, i.e. currently JDK 8 and 11 (both with a lifetime until 2023) and expecting JDK 17 (to be released in late 2021). Additionally, there is support for intermediate releases such as JDK 9/10/12/13/14/15/16 on a best-effort basis, meaning that we accept bug reports and will try to address them as far as technically possible but won't provide any service level guarantees.

Please upgrade to Spring Framework 5.1+ (and the corresponding Spring Boot 2.1+) for JDK 11+ support, as the common Long-Term Support migration path from JDK 8. No earlier Spring versions are officially supported on JDK 11, in particular not with JDK 11 bytecode level. Note that third-party components might not fully support JDK 11 yet, so you are likely to be limited in your full-stack options.

What's New

Upgrade Considerations