You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Maven升级Spring Framework至5.3.20?需修改哪些文件与依赖?

Spring 4.0.5.RELEASE 升级至 5.3.20 的Maven适配方案

你当前的pom.xml版本配置如下:

<properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java-version>1.8</java-version>
        <org.springframework-version>4.0.5.RELEASE</org.springframework-version>
        <org.springframework-security-version>3.2.5.RELEASE</org.springframework-security-version>
        <org.apache.tiles-version>3.0.4</org.apache.tiles-version>
        <org.hibernate-version>4.2.15.Final</org.hibernate-version><!-- 4.3.5.Final -->
        <org.aspectj-version>1.6.10</org.aspectj-version>
        <org.slf4j-version>1.7.7</org.slf4j-version>
        <jackson.version>1.9.10</jackson.version>
</properties>

一、核心版本修改

直接更新Spring Framework的版本号:

<org.springframework-version>5.3.20</org.springframework-version>

二、必须适配的其他依赖版本

Spring 5.3.x对周边依赖有明确版本要求,以下是必须调整的项:

  • Spring Security:Spring 5.3与Security 5.5.x分支强绑定,替换为:
    <org.springframework-security-version>5.5.7</org.springframework-security-version>
    
  • AspectJ:Spring 5.3需要AspectJ 1.9.x及以上版本,替换为:
    <org.aspectj-version>1.9.7</org.aspectj-version>
    
  • Jackson:Spring 5.3不再兼容Jackson 1.x,必须升级到2.x分支,推荐稳定版:
    <jackson.version>2.13.3</jackson.version>
    
  • SLF4J:升级到同分支稳定高版本,避免日志适配问题:
    <org.slf4j-version>1.7.36</org.slf4j-version>
    

三、建议升级的依赖版本

为提升兼容性和稳定性,建议同步升级以下依赖:

  • Hibernate:Spring 5.3兼容Hibernate 5.x,替换为:
    <org.hibernate-version>5.6.14.Final</org.hibernate-version>
    
    若不想大幅改动,至少升级到4.3.x最新稳定版(如4.3.11.Final)
  • Apache Tiles:升级到3.x分支稳定版,适配Spring 5的Web模块:
    <org.apache.tiles-version>3.0.8</org.apache.tiles-version>
    

四、需要调整的其他文件

  1. Spring配置文件(如applicationContext.xml、dispatcher-servlet.xml):
    • 移除Spring 4中已废弃、Spring 5中删除的命名空间或标签(如旧事务配置、AOP标签)
    • 更新已移除的类路径引用(如部分Hibernate整合类、Web视图解析类)
  2. 业务代码:
    • 替换Spring 4过时API(如WebMvcConfigurerAdapter改为实现WebMvcConfigurer接口)
    • 修正依赖升级导致的类方法签名变更问题

五、升级注意事项

  • 先执行mvn clean compile检查编译错误,逐步修复依赖冲突或API问题
  • 运行单元测试,验证核心功能正常
  • 若遇依赖冲突,用mvn dependency:tree分析依赖树,排除冲突的旧版本

内容的提问来源于stack exchange,提问作者Error 404

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 06:10:59