如何解决错误 BasicErrorController 由于注释@EnableAspectJAutoProxy 在 Spring Boot 2.3.6 中
我正在将自己的小型库从 java 8 和 Spring Boot 1.5.x 迁移到 java 11 和 Spring Boot 2.3.x。 我有一些代码测试。当我在 java 8 中运行它们时,一切都很好,所有测试都通过了。 但是当我迁移到 Java 11 和 SB 2.3.x 时出现错误。这是日志:
[INFO] -------------------< com.alexshuvaev.libs:log-aspects-library >-------------------
[INFO] Building log-aspects-library 1.0-SNAPSHOT [5/5]
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- jacoco-maven-plugin:0.8.6:prepare-agent (default) @ log-aspects-library ---
[INFO] argLine set to -javaagent:C:\\Users\\Aleksandr_Shuvaev\\.m2\\repository\\org\\jacoco\\org.jacoco.agent\\0.8.6\\org.jacoco.agent-0.8.6-runtime.jar=destfile=D:\\projects\\alexshuvaev\\foraudit\\log-common\\log-aspects-library\\target\\jacoco.exec
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ log-aspects-library ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory D:\projects\alexshuvaev\foraudit\log-common\log-aspects-library\src\main\resources
[INFO]
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ log-aspects-library ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 11 source files to D:\projects\alexshuvaev\foraudit\log-common\log-aspects-library\target\classes
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ log-aspects-library ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] copying 1 resource
[INFO]
[INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ log-aspects-library ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 10 source files to D:\projects\alexshuvaev\foraudit\log-common\log-aspects-library\target\test-classes
[INFO]
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ log-aspects-library ---
[INFO] Surefire report directory: D:\projects\alexshuvaev\foraudit\log-common\log-aspects-library\target\surefire-reports
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running com.alexshuvaev.libs.logging.annotation.EnableLogAspectsImportSelectorTest
Tests run: 2,Failures: 0,Errors: 0,Skipped: 0,Time elapsed: 1.388 sec
Running com.alexshuvaev.libs.logging.annotation.LoggableContextTest
2021-02-13 14:36:35.552 INFO --- [ main] .b.t.c.SpringBoottestContextBootstrapper : Neither @ContextConfiguration nor @ContextHierarchy found for test class [com.alexshuvaev.libs.logging.annotation.LoggableContextTest],using SpringBootContextLoader
2021-02-13 14:36:35.566 INFO --- [ main] o.s.t.c.support.AbstractContextLoader : Could not detect default resource locations for test class [com.alexshuvaev.libs.logging.annotation.LoggableContextTest]: no resource found for suffixes {-context.xml,Context.groovy}.
2021-02-13 14:36:35.903 INFO --- [ main] .b.t.c.SpringBoottestContextBootstrapper : Loaded default TestExecutionListener class names from location [meta-inf/spring.factories]: [org.springframework.boot.test.mock.mockito.MockitoTestExecutionListener,org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener,org.springframework.boot.test.autoconfigure.restdocs.RestDocsTestExecutionListener,org.springframework.boot.test.autoconfigure.web.client.MockRestServiceServerResetTestExecutionListener,org.springframework.boot.test.autoconfigure.web.servlet.mockmvcPrintOnlyOnFailureTestExecutionListener,org.springframework.boot.test.autoconfigure.web.servlet.WebDriverTestExecutionListener,org.springframework.boot.test.autoconfigure.webservices.client.MockWebServiceServerTestExecutionListener,org.springframework.test.context.web.ServletTestExecutionListener,org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener,org.springframework.test.context.support.DependencyInjectionTestExecutionListener,org.springframework.test.context.support.DirtiesContextTestExecutionListener,org.springframework.test.context.transaction.TransactionalTestExecutionListener,org.springframework.test.context.jdbc.sqlScriptsTestExecutionListener,org.springframework.test.context.event.EventPublishingTestExecutionListener]
2021-02-13 14:36:35.928 INFO --- [ main] .b.t.c.SpringBoottestContextBootstrapper : Using TestExecutionListeners: [org.springframework.test.context.web.ServletTestExecutionListener@248ba4fc,org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener@54cce500,org.springframework.boot.test.mock.mockito.MockitoTestExecutionListener@755033c5,org.springframework.boot.test.autoconfigure.SpringBootDependencyInjectionTestExecutionListener@229c4d34,org.springframework.test.context.support.DirtiesContextTestExecutionListener@5b49b1df,org.springframework.test.context.event.EventPublishingTestExecutionListener@689eab53,org.springframework.boot.test.mock.mockito.ResetMocksTestExecutionListener@1c24639e,org.springframework.boot.test.autoconfigure.restdocs.RestDocsTestExecutionListener@5c9168c3,org.springframework.boot.test.autoconfigure.web.client.MockRestServiceServerResetTestExecutionListener@4ac0fdc7,org.springframework.boot.test.autoconfigure.web.servlet.mockmvcPrintOnlyOnFailureTestExecutionListener@571903ff,org.springframework.boot.test.autoconfigure.web.servlet.WebDriverTestExecutionListener@689ea211,org.springframework.boot.test.autoconfigure.webservices.client.MockWebServiceServerTestExecutionListener@3f1e18b1]
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__,| / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.3.6.RELEASE)
2021-02-13 14:36:36.489 INFO 17272 --- [ main] r.v.d.l.annotation.LoggableContextTest : Starting LoggableContextTest on EPRUKRAW003D with PID 17272 (started by Aleksandr_Shuvaev in D:\projects\alexshuvaev\foraudit\log-common\log-aspects-library)
2021-02-13 14:36:36.490 DEBUG 17272 --- [ main] r.v.d.l.annotation.LoggableContextTest : Running with Spring Boot v2.3.6.RELEASE,Spring v5.2.11.RELEASE
2021-02-13 14:36:36.490 INFO 17272 --- [ main] r.v.d.l.annotation.LoggableContextTest : The following profiles are active: test
2021-02-13 14:36:37.787 WARN 17272 --- [ main] o.s.w.c.s.GenericWebApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'TestsConfiguration': Initialization of bean Failed; nested exception is java.lang.IllegalArgumentException: warning no match for this type name: org.springframework.boot.autoconfigure.web.BasicErrorController [Xlint:invalidAbsoluteTypeName]
2021-02-13 14:36:37.809 ERROR 17272 --- [ main] o.s.boot.SpringApplication : Application run Failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'TestsConfiguration': Initialization of bean Failed; nested exception is java.lang.IllegalArgumentException: warning no match for this type name: org.springframework.boot.autoconfigure.web.BasicErrorController [Xlint:invalidAbsoluteTypeName]
at org.springframework.beans.factory.support.AbstractAutowireCapablebeanfactory.doCreateBean(AbstractAutowireCapablebeanfactory.java:602)
at org.springframework.beans.factory.support.AbstractAutowireCapablebeanfactory.createBean(AbstractAutowireCapablebeanfactory.java:516)
at org.springframework.beans.factory.support.Abstractbeanfactory.lambda$doGetBean$0(Abstractbeanfactory.java:324)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
at org.springframework.beans.factory.support.Abstractbeanfactory.doGetBean(Abstractbeanfactory.java:322)
at org.springframework.beans.factory.support.Abstractbeanfactory.getBean(Abstractbeanfactory.java:202)
at org.springframework.beans.factory.support.DefaultListablebeanfactory.preInstantiateSingletons(DefaultListablebeanfactory.java:897)
at org.springframework.context.support.AbstractApplicationContext.finishbeanfactoryInitialization(AbstractApplicationContext.java:879)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:551)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:758)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:750)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:405)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
at org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:120)
at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:99)
at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:124)
at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:123)
at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:190)
at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:132)
at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:244)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:227)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:289)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:291)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runchild(SpringJUnit4ClassRunner.java:246)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runchild(SpringJUnit4ClassRunner.java:97)
at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
at org.junit.runners.ParentRunner.runchildren(ParentRunner.java:329)
at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:190)
at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
Caused by: java.lang.IllegalArgumentException: warning no match for this type name: org.springframework.boot.autoconfigure.web.BasicErrorController [Xlint:invalidAbsoluteTypeName]
at org.aspectj.weaver.tools.pointcutParser.parsepointcutExpression(pointcutParser.java:319)
at org.springframework.aop.aspectj.AspectJExpressionpointcut.buildpointcutExpression(AspectJExpressionpointcut.java:227)
at org.springframework.aop.aspectj.AspectJExpressionpointcut.obtainpointcutExpression(AspectJExpressionpointcut.java:198)
at org.springframework.aop.aspectj.AspectJExpressionpointcut.getClassFilter(AspectJExpressionpointcut.java:177)
at org.springframework.aop.support.AopUtils.canApply(AopUtils.java:226)
at org.springframework.aop.support.AopUtils.canApply(AopUtils.java:289)
at org.springframework.aop.support.AopUtils.findAdvisorsThatCanApply(AopUtils.java:321)
at org.springframework.aop.framework.autoproxy.AbstractAdvisorAutoproxyCreator.findAdvisorsThatCanApply(AbstractAdvisorAutoproxyCreator.java:128)
at org.springframework.aop.framework.autoproxy.AbstractAdvisorAutoproxyCreator.findEligibleAdvisors(AbstractAdvisorAutoproxyCreator.java:97)
at org.springframework.aop.framework.autoproxy.AbstractAdvisorAutoproxyCreator.getAdvicesAndAdvisorsForBean(AbstractAdvisorAutoproxyCreator.java:78)
at org.springframework.aop.framework.autoproxy.AbstractAutoproxyCreator.wrapIfNecessary(AbstractAutoproxyCreator.java:347)
at org.springframework.aop.framework.autoproxy.AbstractAutoproxyCreator.postProcessAfterInitialization(AbstractAutoproxyCreator.java:299)
at org.springframework.beans.factory.support.AbstractAutowireCapablebeanfactory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapablebeanfactory.java:430)
at org.springframework.beans.factory.support.AbstractAutowireCapablebeanfactory.initializeBean(AbstractAutowireCapablebeanfactory.java:1798)
at org.springframework.beans.factory.support.AbstractAutowireCapablebeanfactory.doCreateBean(AbstractAutowireCapablebeanfactory.java:594)
... 47 common frames omitted
Pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>com.alexshuvaev.libs</groupId>
<artifactId>log-parent</artifactId>
<relativePath>../log-parent</relativePath>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>log-aspects-library</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project>
父 Pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>log-common</artifactId>
<groupId>com.alexshuvaev.libs</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>log-parent</artifactId>
<packaging>pom</packaging>
<properties>
<build.number>-1</build.number>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>11</java.version>
<maven.compiler.source>${java.version}</maven.compiler.source>
<maven.compiler.target>${java.version}</maven.compiler.target>
<jacoco-plugin.version>0.8.6</jacoco-plugin.version>
<maven-jar-plugin.version>3.2.0</maven-jar-plugin.version>
<maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
<spring-boot.version>2.3.6.RELEASE</spring-boot.version>
<logback-more-appenders.version>1.8.4</logback-more-appenders.version>
<fluent-logger.version>0.3.4</fluent-logger.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring-boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.sndyuk</groupId>
<artifactId>logback-more-appenders</artifactId>
<version>${logback-more-appenders.version}</version>
</dependency>
<dependency>
<groupId>org.fluentd</groupId>
<artifactId>fluent-logger</artifactId>
<version>${fluent-logger.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven-compiler-plugin.version}</version>
<configuration>
<forceJavacCompilerUse>true</forceJavacCompilerUse>
<release>${java.version}</release>
<compilerArgs>
<arg>-Amapstruct.defaultComponentModel=spring</arg>
<arg>-Amapstruct.unmappedTargetPolicy=WARN</arg>
<arg>-Amapstruct.suppressGeneratorTimestamp=true</arg>
</compilerArgs>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>${maven-jar-plugin.version}</version>
<configuration>
<archive>
<manifest>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
<addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
</manifest>
<manifestEntries>
<Build-Number>${build.number}</Build-Number>
</manifestEntries>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>${jacoco-plugin.version}</version>
<executions>
<execution>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>report</id>
<phase>prepare-package</phase>
<goals>
<goal>report</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
在代码中,我有一个注释 @EnableAspectJAutoproxy
。
当我删除时,错误消失了,但我的测试没有通过,因为 cglib 字段为空。但必须像这个截图:
我尝试在我的代码中添加 BasicErrorController 类。带包的空类:package org.springframework.boot.autoconfigure.web; 然后没有错误,所有测试都通过了。但我认为这不是一个好方法。
还有一些代码: 在我的主包中:
package com.alexshuvaev.libs.logging.annotation;
import org.springframework.context.annotation.EnableAspectJAutoproxy;
import org.springframework.context.annotation.Import;
import com.alexshuvaev.libs.logging.aspects.OperType;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Import(EnableLogAspectsImportSelector.class)
@EnableAspectJAutoproxy
public @interface EnableLogAspects {
OperType[] value() default {};
}
在我的测试包中:
package com.alexshuvaev.libs.logging;
import com.alexshuvaev.libs.logging.config.TestsConfiguration;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBoottest;
import org.springframework.test.context.ActiveProfiles;
import org.springframework.test.context.junit4.springrunner;
@ActiveProfiles("test")
@RunWith(springrunner.class)
@SpringBoottest(classes = TestsConfiguration.class)
public abstract class IntegrationTest {
}
package com.alexshuvaev.libs.logging.config;
import com.alexshuvaev.libs.logging.IntegrationTest;
import com.alexshuvaev.libs.logging.annotation.EnableLogAspects;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.EnableAspectJAutoproxy;
@Configuration
@EnableLogAspects
@ComponentScan(basePackageClasses = IntegrationTest.class)
public class TestsConfiguration {
}
package com.alexshuvaev.libs.logging.annotation;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import static com.alexshuvaev.libs.logging.aspects.OperType.LOGGABLE;
import static com.alexshuvaev.libs.logging.aspects.OperType.REST;
import com.alexshuvaev.libs.logging.IntegrationTest;
import com.alexshuvaev.libs.logging.aspects.LoggableAspect;
import com.alexshuvaev.libs.logging.aspects.OperType;
import com.alexshuvaev.libs.logging.testdata.someClassService;
import com.alexshuvaev.libs.logging.testdata.someController;
import com.alexshuvaev.libs.logging.testdata.someService;
import com.alexshuvaev.libs.logging.testdata.resource.someResource;
import com.alexshuvaev.libs.logging.utils.JoinPointLogUtils;
import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.LoggerContext;
import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.read.ListAppender;
import lombok.extern.slf4j.Slf4j;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@Slf4j
public class LoggableContextTest extends IntegrationTest {
private static ListAppender<ILoggingEvent> loggingAppender;
@Before
public void initAppender() {
LoggerContext context = (LoggerContext) LoggerFactory.getILoggerFactory();
loggingAppender = new ListAppender<>();
loggingAppender.setContext(context);
loggingAppender.start();
context.getLogger(SomeService.class).addAppender(loggingAppender);
context.getLogger(SomeClassService.class).addAppender(loggingAppender);
context.getLogger(SomeController.class).addAppender(loggingAppender);
context.getLogger(SomeResource.class).addAppender(loggingAppender);
}
@After
public void cleanAppender() {
loggingAppender.list.clear();
}
@Autowired
private SomeService someService;
@Autowired
private SomeClassService someClassService;
@Autowired
private SomeController someController;
@Autowired
private SomeResource someResource;
@Test
public void defaulttest() {
someService.withDefaultVoid();
assertAppenderSingleEvent(JoinPointLogUtils.END_EXECUTING_TEMPLATE_DETAILED_ParaMS,Level.DEBUG,SomeService.class);
}
}
为什么 @EnableAspectJAutoproxy
尝试使用 Spring Boot 1.5.x 中的包查找类 BasicErrorController
?
我在我的 Pom.xml 中找不到依赖项不兼容。可能是我忘记添加任何依赖项了吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。