Spring Boot-Upgrade von 3.2.12 auf 3.3.5 verursacht NoSuchMethodException in AspectJ
Posted: 07 Jan 2025, 06:38
Ich habe eine Legacy-Anwendung, die als Java-Kernprojekt begann, später Spring integrierte und schließlich in eine Spring Boot-Anwendung konvertiert wurde. Wir verwenden derzeit Spring Boot 3.2.12 und ich bin gerade dabei, es auf 3.3.5 zu aktualisieren. Nach diesem Upgrade startet meine Anwendung jedoch nicht mit der folgenden Ausnahme:
Das Ausführen eines einfachen Befehls „mvn clean install“ führt dazu, dass der standardmäßige SpringBootTest mit Version 3.3.5 fehlschlägt, während er mit Version 3.2.12 einwandfrei funktioniert.Ich habe ein Dummy-Projekt erstellt, mit dem ich dieses Problem reproduzieren kann. Sie finden das Projekt auf GitHub hier: https://github.com/GeneralNitin/Spring-Aspect
Wenn Sie in der pom.xml die Versionen wie unten gezeigt kommentieren und auskommentieren, Sie können das Problem reproduzieren:
Das Überraschende daran ist, dass „aspektj.version“ in Spring Boot 3.2.12 und 3.3.5 gleich ist:
Ich kann nicht herausfinden, wo das Problem liegt. Für Hilfe oder Hinweise zur Lösung dieses Problems wären wir sehr dankbar.
Code: Select all
Error creating bean with name 'logAspect' defined in class path resource
[com/generalnitin/springaop/config/AspectConfig.class]: Failed to instantiate
[com.generalnitin.springaop.aspects.LogAspect]: Factory method 'logAspect' threw
exception with message: Exception while initializing
com.generalnitin.springaop.aspects.LogAspect: java.lang.NoSuchMethodException:
com.generalnitin.springaop.aspects.LogAspect.aspectOf()
Wenn Sie in der pom.xml die Versionen wie unten gezeigt kommentieren und auskommentieren, Sie können das Problem reproduzieren:
Code: Select all
org.springframework.boot
spring-boot-starter-parent
3.3.5
Code: Select all
1.9.22.1