天天看點

更新Spring Boot 2.2.0、Spring Cloud Hoxton 問題總結

項目推薦: Spring Cloud 、Spring Security OAuth2的RBAC權限管理系統 歡迎關注 最近更新項目的依賴 到最新版本

版本變化

依賴 項目版本 目标版本
Spring Boot 2.1.9.RELEASE 2.2.0.RELEASE
Spring Cloud Greenwich.SR3 Hoxton.RC1
Spring Boot Admin 2.1.6 2.2.0

Hoxton 版本依賴廠庫

目前

Spring Cloud Hoxton

未釋出

RELEASE

版本,官方計劃 本月釋出

更新Spring Boot 2.2.0、Spring Cloud Hoxton 問題總結

使用

Hoxton.RC1

版本需要配置

spring

倉庫

<repository>
    <id>spring-milestones</id>
    <name>Spring Milestones</name>
    <url>https://repo.spring.io/milestone</url>
    <snapshots>
        <enabled>false</enabled>
    </snapshots>
</repository>           

spring boot admin 未釋出

2.2.0

适配版本

解決方法: 使用快照版本

2.2.0-SNAPSHOT

, 需要配置快照廠庫

<repository>
    <id>sonatype-nexus-snapshots</id>
    <name>Sonatype Nexus Snapshots</name>
    <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
    <snapshots>
        <enabled>true</enabled>
    </snapshots>
    <releases>
        <enabled>false</enabled>
    </releases>
</repository>           

更新中遇到的問題

  • spring boot 2.2.0 bug ,造成 和mybatis 3.5.2 不相容

官方issue:

https://github.com/spring-projects/spring-boot/issues/18670

構造器注入的問題, mybatis 私有構造器不能綁定屬性, 造成其他 依賴

mybatis

的架構 類型

mybatis-plus

這種問題

https://gitee.com/baomidou/mybatis-plus/issues/I143DB
Failed to bind properties under 'mybatis-plus.configuration.incomplete-result-maps[0].assistant.configuration.mapped-statements[0].parameter-map.parameter-mappings[0]' to org.apache.ibatis.mapping.ParameterMapping           
  • 解決方法:

    我們重新編譯了 mybatis 3.5.2 、mybatis-plus 3.2.0 修改部分源碼相容

私有構造器改成public, maven 坐标修改為

<dependency>
    <groupId>com.pig4cloud</groupId>
    <artifactId>mybatis-plus</artifactId>
<version>3.2.0</           
更新Spring Boot 2.2.0、Spring Cloud Hoxton 問題總結

總結

  • 由于使用的

    Spring Cloud RC

    版本未同步到 阿裡雲等國内鏡像廠庫
mvn clean install           

可能會出現失敗,建議重複執行幾次即可

  • 鑒于Spring Boot 2.2.0 和 mybatis 的不相容問題,2.2.1 會修複這個問題,建議暫時不要更新2.2.0 直接使用 2.2.1

2.2.1 已經釋出,請直接更新到2.2.1 即可解決相容問題 (2019年11月07補充)

更新Spring Boot 2.2.0、Spring Cloud Hoxton 問題總結