Search code examples
javaspringguava

What meant by support drop of Guava in Spring Framework 5?


As it mentioned in What's New in Spring Framework 5.x documentation page under the paragraph "Removed Packages, Classes and Methods" quoted below, the support of Guava library is dropped in Spring Framework 5.

Dropped support: Portlet, Velocity, JasperReports, XMLBeans, JDO, Guava.

What kind of support is implied by that statement, what kind of relation between Spring and Guava is there?


Solution

  • UPDATE: quoting bernstein:

    Spring has only used Guava Caching classes internally for it's low level Cache implementation, so they had to support "Guava". As of Spring 5 they use Caffeine for this, so they naturally dropped support of Guava.

    Original answer:

    Supporting an external lib in a framework means that the framework guarantees that if you add the lib in your project, it will not pollute your class path and break anything.

    This is a complex task because libs usually have transitive dependencies or in some cases use undocumented features or use environment dependent features, or just don't work together with other libs, etc.

    By dropping the support, they make the development process easier for them which also means faster releases for us.