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

springboot單元測試依賴踩坑記錄

 更新時間:2023年03月21日 09:10:58   作者:Sokasa_BiuBiuBiu  
這篇文章主要介紹了springboot單元測試依賴踩坑記錄及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

springboot單元測試依賴踩坑

在進(jìn)行springboot 單元測試的時候,發(fā)現(xiàn)如下錯誤。

java.lang.IllegalStateException: Could not load CacheAwareContextLoaderDelegate [class org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate]

    at org.springframework.test.context.BootstrapUtils.createCacheAwareContextLoaderDelegate(BootstrapUtils.java:103)
    at org.springframework.test.context.BootstrapUtils.createBootstrapContext(BootstrapUtils.java:72)
    at org.springframework.test.context.TestContextManager.<init>(TestContextManager.java:124)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTestContextManager(SpringJUnit4ClassRunner.java:151)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.<init>(SpringJUnit4ClassRunner.java:142)
    at org.springframework.test.context.junit4.SpringRunner.<init>(SpringRunner.java:49)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
    at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
    at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26)
    at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    at org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:33)
    at org.junit.internal.requests.FilterRequest.getRunner(FilterRequest.java:36)
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:49)
    at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate]: Unresolvable class definition; nested exception is java.lang.NoSuchMethodError: org.springframework.core.KotlinDetector.isKotlinReflectPresent()Z
    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:132)
    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:152)
    at org.springframework.test.context.BootstrapUtils.createCacheAwareContextLoaderDelegate(BootstrapUtils.java:100)
    ... 20 more
Caused by: java.lang.NoSuchMethodError: org.springframework.core.KotlinDetector.isKotlinReflectPresent()Z
    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:171)
    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:122)
    ... 22 more

一天以前單測是能跑的,初步預(yù)計(jì)是依賴的問題。但是因?yàn)轫?xiàng)目是多模塊結(jié)構(gòu),模塊與模塊之間的引用比較多,需要排查每一個模塊是否有問題。

如下步驟

  • 1. 在出現(xiàn)問題的單測歸屬模塊的pom文件中,找到所有模塊間依賴
  • 2. 依次到各個模塊進(jìn)行單元測試,定位問題模塊
  • 3. 排查問題模塊的依賴問題

一番折騰,發(fā)現(xiàn)問題模塊 carrier-api

再往下深入,檢查carrier-api依賴

很幸運(yùn),一眼就發(fā)現(xiàn)了問題所在, 這里的spring-web的引用導(dǎo)致了錯誤的發(fā)生。將該引用注釋掉,并且將相關(guān)代碼進(jìn)行引用替換。

問題解決

總結(jié)

1. spring-boot-starter-test 依賴包含了junit ,springboot 單測的話建議使用該依賴,包含了很多東西

2. 使用spring-boot-test 的話, 需要單獨(dú)引入 spring-test, junit 依賴,否則無法單測

3. 無論是1還是2. 他們都和 spring-web 依賴沖突, 只要引入這個依賴,單測就無法運(yùn)行

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java中抽象類用法與注意點(diǎn)實(shí)例詳解

    Java中抽象類用法與注意點(diǎn)實(shí)例詳解

    這篇文章主要介紹了Java中抽象類用法與注意點(diǎn),結(jié)合實(shí)例形式詳細(xì)分析了java抽象類的定義、使用及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2019-08-08
  • Java類加載器層次結(jié)構(gòu)原理解析

    Java類加載器層次結(jié)構(gòu)原理解析

    這篇文章主要介紹了Java類加載器層次結(jié)構(gòu)原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06
  • Java解壓zip文件完整代碼分享

    Java解壓zip文件完整代碼分享

    這篇文章主要介紹了Java解壓zip文件完整代碼分享,向大家分享了兩部分代碼示例,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • SpringBoot整合screw實(shí)現(xiàn)自動生成數(shù)據(jù)庫設(shè)計(jì)文檔

    SpringBoot整合screw實(shí)現(xiàn)自動生成數(shù)據(jù)庫設(shè)計(jì)文檔

    使用navicat工作的話,導(dǎo)出的格式是excel不符合格式,還得自己整理。所以本文將用screw工具包,整合到springboot的項(xiàng)目中便可以自動生成數(shù)據(jù)庫設(shè)計(jì)文檔,非常方便,下面就分享一下教程
    2022-11-11
  • Mybatis框架中Interceptor接口的使用說明

    Mybatis框架中Interceptor接口的使用說明

    這篇文章主要介紹了Mybatis框架中Interceptor接口的使用說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Springboot2.1.6集成activiti7出現(xiàn)登錄驗(yàn)證的實(shí)現(xiàn)

    Springboot2.1.6集成activiti7出現(xiàn)登錄驗(yàn)證的實(shí)現(xiàn)

    這篇文章主要介紹了Springboot2.1.6集成activiti7出現(xiàn)登錄驗(yàn)證的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • Java中使用HashMap改進(jìn)查找性能的步驟

    Java中使用HashMap改進(jìn)查找性能的步驟

    這篇文章主要介紹了Java中使用HashMap改進(jìn)查找性能的步驟,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下
    2021-02-02
  • 利用SpringBoot實(shí)現(xiàn)多數(shù)據(jù)源的兩種方式總結(jié)

    利用SpringBoot實(shí)現(xiàn)多數(shù)據(jù)源的兩種方式總結(jié)

    關(guān)于動態(tài)數(shù)據(jù)源的切換的方案有很多,核心只有兩種,一種是構(gòu)建多套環(huán)境,另一種是基于spring原生的AbstractRoutingDataSource切換,這篇文章主要給大家介紹了關(guān)于利用SpringBoot實(shí)現(xiàn)多數(shù)據(jù)源的兩種方式,需要的朋友可以參考下
    2021-10-10
  • Java Array.sort()源碼分析講解

    Java Array.sort()源碼分析講解

    Arrays類中有一個sort()方法,該方法是Arrays類的靜態(tài)方法,在需要對數(shù)組進(jìn)行排序時,非常的好用。但是sort()的參數(shù)有好幾種,下面我就為大家一一介紹,這幾種形式的用法
    2022-08-08
  • Java創(chuàng)建型設(shè)計(jì)模式之單例模式

    Java創(chuàng)建型設(shè)計(jì)模式之單例模式

    Java單例模式是一種設(shè)計(jì)模式,它確保一個類只有一個實(shí)例,并提供一個全局訪問點(diǎn)??梢允褂枚喾N方式實(shí)現(xiàn)單例模式,如餓漢式、懶漢式、雙重檢查鎖定、靜態(tài)內(nèi)部類、枚舉等,每種方式都有其優(yōu)缺點(diǎn),需要根據(jù)具體情況選擇使用
    2023-05-05

最新評論

庐江县| 博客| 临桂县| 六枝特区| 运城市| 图木舒克市| 枣庄市| 永川市| 资中县| 东明县| 沁阳市| 雅江县| 开原市| 肥乡县| 苏尼特右旗| 唐山市| 贡嘎县| 德安县| 天津市| 富源县| 普陀区| 弥勒县| 土默特左旗| 平定县| 钦州市| 安阳县| 芦山县| 阿鲁科尔沁旗| 察雅县| 原阳县| 禄丰县| 东丽区| 宣城市| 南昌县| 新和县| 巴彦县| 山东省| 汶上县| 思茅市| 广元市| 那坡县|