gpt4 book ai didi

Java Spring AOP 记录器

转载 作者:行者123 更新时间:2023-11-30 02:50:49 30 4
gpt4 key购买 nike

我有以下方面:

@Component
@Aspect
public class LoggingAspect {

Logger logger = Logger.getLogger(LoggingAspect.class);

@AfterReturning(pointcut = "execution(* com.example..*.*(..))", returning = "retVal")
public void logAfterMethod(JoinPoint joinPoint, Object retVal) {
StringBuffer logMessage = new StringBuffer();
logMessage.append(joinPoint.getTarget().getClass().getName());
logMessage.append(".");
logMessage.append(joinPoint.getSignature().getName());
logMessage.append("(");
// append args
Object[] args = joinPoint.getArgs();
for (int i = 0; i < args.length; i++) {
logMessage.append(args[i]).append(",");
}
if (args.length > 0) {
logMessage.deleteCharAt(logMessage.length() - 1);
}

logMessage.append(")");
if (retVal != null) {
logMessage.append(" with return value " + retVal + " of type "
+ retVal.getClass());
} else {
logMessage.append(" with return value null");
}
logger.info(logMessage);
}

}

然后是以下 bean:

@Bean
public LoggingAspect logger(){
return new LoggingAspect();
}

但是每当我想运行我的应用程序时它都会给我错误,我用谷歌搜索但找不到与此相关的任何问题,也许我错过了一些东西://

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'embeddedServletContainerCustomizerBeanPostProcessor': BeanPostProcessor before instantiation of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration': BeanPostProcessor before instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: org/aspectj/weaver/reflect/ReflectionWorld$ReflectionWorldException
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration': BeanPostProcessor before instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: org/aspectj/weaver/reflect/ReflectionWorld$ReflectionWorldException
Caused by: java.lang.NoClassDefFoundError: org/aspectj/weaver/reflect/ReflectionWorld$ReflectionWorldException
Caused by: java.lang.ClassNotFoundException: org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException

最佳答案

主要原因是:嵌套异常为java.lang.NoClassDefFoundError: org/aspectj/weaver/reflect/ReflectionWorld

这意味着您必须将 aspectjweaver.jar 添加到您的类路径中。

如果您使用 maven,请将依赖项添加到 pom.xml:

<!-- https://mvnrepository.com/artifact/org.aspectj/aspectjweaver -->
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.8.9</version>
</dependency>

关于Java Spring AOP 记录器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38713268/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com