Heim  >  Artikel  >  Java  >  Der Springboot-Einheitstest hängt von der Analyse des Pit-Beispielquellcodes ab

Der Springboot-Einheitstest hängt von der Analyse des Pit-Beispielquellcodes ab

王林
王林nach vorne
2023-05-23 19:01:291297Durchsuche

springen 🎜🎜#

java.lang.IllegalStateException: Konnte nicht laden Sie CacheAwareContextLoaderDelegate [Klasse org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate]

    bei org.springframework.test.context.BootstrapUtils.createCacheAwareContextLoaderDelegate(BootstrapUtils.java:103)#🎜 🎜#    bei org. springframework.test.context.BootstrapUtils.createBootstrapContext(BootstrapUtils.java:72)
    bei org.springframework.test.context.TestContextManager.(TestContextManager.java:124)

    bei org.springframework .test.context.junit4.SpringJUnit4ClassRunner.createTestContextManager(SpringJUnit4ClassRunner.java:151)

    bei org.springframework.test.context.junit4.SpringJUnit4ClassRunner.(SpringJUnit4ClassRunner.java:142)#🎜 🎜#    at org.springframework.test.context.junit4.SpringRunner.(SpringRunner.java:49)

    bei sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    bei sun.reflect.NativeConstructorAccessorImpl. newInstance (nativeconstructorAccessorimpl.java:62)
#at sun.reflect.delegatingConstructorAccessorImpl.Newinstance (DelegatingConstructorAccessorImpl.java:45)
##bei java.lang.reflect.Reflect.Refrect.Refect.Con.Rector. 🎜#    bei org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
    bei org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
    bei org .junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    bei org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26)
    bei org.junit.runners .model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
    bei org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:33)
    bei org.junit.internal.requests.FilterRequest .getRunner(FilterRequest.java:36)
    bei com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:49)
    bei. com.intellij.rt.execution.junit.IdeaTestRunner$Rep eater.startRunnerWithArgs (IdeaTestRunner.java:47)
    bei com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
    bei com.intellij.rt.execution.junit.JUnitStarter.main (JUnitStarter.java:70)
Verursacht durch: org.springframework.beans.BeanInstantiationException: Fehler beim Instanziieren von [org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate]: Nicht auflösbare Klassendefinition; verschachtelte Ausnahme ist java.lang.NoSuchMethodError: org.springframework.core.KotlinDetector.isKotlinReflectPresent()Z
    bei org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:132)
    bei org.springframework .beans.BeanUtils.instantiateClass(BeanUtils.java:152)
    at org.springframework.test.context.BootstrapUtils.createCacheAwareContextLoaderDelegate(BootstrapUtils.java:100)
    ... 20 weitere
Verursacht von: java.lang.NoSuchMethodError: org.springframework.core.KotlinDetector.isKotlinReflectPresent()Z
    bei org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:171)
    bei org.springframework. Beans.BeanUtils.instantiateClass(BeanUtils.java:122)
    ... 22. mehr


依赖的问题.由于项目采用了多模块结构,模块间的引用较多,因此需要逐一检查每个模块是否存在问题。#🎜🎜 #
如下步骤


#🎜🎜 #1. 在出现问题的单测归属模块的pom文件中,找到所有模块间依赖

2. 依次到各个模块进行单元测试,定位问题模块

  • 3. 排查问题模块的依赖问题

  • 一番折腾,发现问题模块 Carrier-API

    # 🎜🎜#

  • #🎜 🎜#再往下深入,检查carrier-api依赖
幸运的是,问题的根源迅速被发现,是由于spring-web的引用导致的错误.将该引用注释掉,并且将相关代码进行引用替换.

Problem gelöst

Der Springboot-Einheitstest hängt von der Analyse des Pit-Beispielquellcodes ab

Das obige ist der detaillierte Inhalt vonDer Springboot-Einheitstest hängt von der Analyse des Pit-Beispielquellcodes ab. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen