最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot版本升級容易遇到的一些問題

 更新時間:2023年12月21日 11:00:10   作者:彩虹海。  
由于項目需求,需要將nacos 1.4.6版本升級到2.x版本,由此引發(fā)的springboot、springcloud、springcloud Alibaba一系列版本變更,本文給大家總結(jié)一下SpringBoot版本升級容易遇到的一些問題,需要的朋友可以參考下

背景:由于項目需求,需要將nacos 1.4.6版本升級到2.x版本,由此引發(fā)的springboot、springcloud、springcloud Alibaba一系列版本變更。

舊版本分別為:

Spring Boot 2.3.5.RELEASE

Spring Cloud Hoxton.SR9

Spring Cloud Alibaba 2.2.6.RELEASE

一、版本選擇

1、springboot2.x.x及以下使用jdk11、jdk8都可以,springboot3.x.x最低要求jdk17。首先確定springboot版本需要支持jdk8,即需要springboot2.x.x。

2、根據(jù)項目需求,選擇合適的版本。

參考:Git版本說明網(wǎng)址:(組件版本以及依賴關(guān)系)

例:要考慮支持nacos2.x,所以紅框內(nèi)是可選。

組件版本關(guān)系

Spring Cloud Alibaba 需要在2.2.8.RELEASE及以上,紅框內(nèi)是可選。

springboot版本

最終確定選擇用*標記的最新版本。

Spring Boot 2.6.13

Spring Cloud 2021.0.5

Spring Cloud Alibaba 2021.0.5.0

nacos 2.2.0

二、奇奇怪怪的坑

1、循環(huán)依賴

springboot升級為2.6.13后項目啟動報錯:

循環(huán)依賴報錯

Action:
Relying upon circular references is discouraged and they are prohibited by default. Update your application to remove the dependency cycle between beans. As a last resort, it may be possible to break the cycle automatically by setting spring.main.allow-circular-references to true.
出現(xiàn)的bug大概意思是:不鼓勵依賴循環(huán)引用,默認情況下是禁止的。更新您的應(yīng)用程序以刪除 bean 之間的依賴循環(huán)。作為最后的手段,可以通過將 spring.main.allow-circular-references 設(shè)置為 true 來自動中斷循環(huán)。

沒有特殊處理代碼,最后選擇了修改yml配置文件,按照提示添加如下配置

spring:
  main:
    allow-circular-references:true

2、quartz數(shù)據(jù)源配置

springboot升級為2.6.13后項目啟動報錯:
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘quartzScheduler’ defined in class path resource [org/springframework/boot/autoconfigure/quartz/QuartzAutoConfiguration.class]: Invocation of init method failed; nested exception is org.quartz.SchedulerConfigException: DataSource name not set.

報錯原因:

spring-boot-starter-quartz 2.5.6 之前使用org.quartz.impl.jdbcjobstore.JobStoreTX定義quartz的默認數(shù)據(jù)源支持,quartz.properties如下

org.quartz.jobStore.class=org.quartz.impl.jdbcjobstore.JobStoreTX

2.5.6的版本后將不再支持以上方式進行配置默認數(shù)據(jù)源,需改為如下配置

org.quartz.jobStore.class=org.springframework.scheduling.quartz.LocalDataSourceJobStore

3、跨域問題

項目啟動成功,前端訪問報錯:

在這里插入圖片描述

去網(wǎng)上查了原因后,是升級后spring的CorsFilter類針對CorsConfiguration新增了校驗,最后修改方案是繼續(xù)使用CorsFilter,使用官方推薦的allowedOriginPatterns即可,如下

// corsConfiguration.addAllowedOrigin("*");
corsConfiguration.addAllowedOriginPattern("*");

跨越修改

4、版本依賴排除

升級后sentinel相關(guān)提示找不到依賴錯誤,cant reslove fastjson:1.2.83_noneautotype
排除當前使用的版本,引用maven倉庫中有的版本

依賴版本信息

5、Druid的一個bug

拋出異常:maxEvictableIdleTimeMillis must be grater than minEvictableIdleTimeMillis。
Druid-1.1.10 升級為 Druid-1.1.22

數(shù)據(jù)庫連接池升級

具體詳細可參考這篇文章:Druid的一個Bug

以上就是SpringBoot版本升級容易遇到的一些問題的詳細內(nèi)容,更多關(guān)于SpringBoot版本升級問題的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Java中常見的編碼集問題總結(jié)

    Java中常見的編碼集問題總結(jié)

    這篇文章主要為大家整理了一些Java中常見的編碼集問題,文中的示例代碼講解詳細,對我們深入理解Java有一定的幫助,感興趣的小伙伴可以了解一下
    2023-02-02
  • Spring?Cloud整合XXL-Job的示例代碼

    Spring?Cloud整合XXL-Job的示例代碼

    這篇文章主要介紹了springcloud整合xxl-job的示例代碼,主要分為四個過程,本文給大家介紹的非常詳細,需要的朋友可以參考下
    2023-05-05
  • SpringCloud Stream消息驅(qū)動實例詳解

    SpringCloud Stream消息驅(qū)動實例詳解

    這篇文章主要介紹了SpringCloud Stream消息驅(qū)動的相關(guān)知識,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • Springboot集成mqtt客戶端詳解

    Springboot集成mqtt客戶端詳解

    MQTT是一個基于客戶端-服務(wù)器的消息發(fā)布/訂閱傳輸協(xié)議。MQTT協(xié)議是輕量、簡單、開放和易于實現(xiàn)的,這些特點使它適用范圍非常廣泛。本文為大家分享了Springboot整合mqtt服務(wù)的示例代碼,需要的可以參考一下
    2022-10-10
  • Java Comparator.comparing比較導(dǎo)致空指針異常的解決

    Java Comparator.comparing比較導(dǎo)致空指針異常的解決

    這篇文章主要介紹了Java Comparator.comparing比較導(dǎo)致空指針異常的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Java中的Rocketmq事務(wù)消息詳解

    Java中的Rocketmq事務(wù)消息詳解

    這篇文章主要介紹了Java中的Rocketmq事務(wù)消息詳解,RocketMQ的事務(wù)消息支持在業(yè)務(wù)邏輯與發(fā)送消息之間提供事務(wù)保證,RocketMQ通過兩階段的方式提供事務(wù)消息的支持,需要的朋友可以參考下
    2023-08-08
  • SpringBoot+redis配置及測試的方法

    SpringBoot+redis配置及測試的方法

    這篇文章主要介紹了SpringBoot+redis配置及測試的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Spring Boot實現(xiàn)郵件服務(wù)(附:常見郵箱的配置)

    Spring Boot實現(xiàn)郵件服務(wù)(附:常見郵箱的配置)

    這篇文章主要給大家介紹了關(guān)于Spring Boot實現(xiàn)郵件服務(wù)的相關(guān)資料,文中還附上了常見郵箱的配置,通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12
  • Mybatis實現(xiàn)一對一查詢映射處理

    Mybatis實現(xiàn)一對一查詢映射處理

    MyBatis是一種流行的Java持久化框架,它提供了靈活而強大的查詢映射功能,本文主要介紹了Mybatis實現(xiàn)一對一查詢映射處理,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-08-08
  • Java基礎(chǔ)學(xué)習(xí)筆記之數(shù)組詳解

    Java基礎(chǔ)學(xué)習(xí)筆記之數(shù)組詳解

    這篇文章主要介紹了Java基礎(chǔ)學(xué)習(xí)筆記之數(shù)組,結(jié)合實例形式詳細分析了java的基本概念、定義、迭代、輸出、反轉(zhuǎn)、排序等常用操作技巧,需要的朋友可以參考下
    2019-08-08

最新評論

姚安县| 上林县| 庆云县| 静乐县| 郑州市| 集安市| 柏乡县| 凤冈县| 河间市| 齐齐哈尔市| 东明县| 合阳县| 类乌齐县| 罗江县| 县级市| 遵义县| 乐至县| 万州区| 苍溪县| 莱芜市| 纳雍县| 鹤峰县| 郧西县| 通州市| 南皮县| 财经| 华池县| 凯里市| 通河县| 榕江县| 繁昌县| 衡阳县| 四川省| 突泉县| 柳河县| 九寨沟县| 柘荣县| 渝中区| 顺义区| 安宁市| 出国|