Spring-Retry 1.2.4 с Spring 4.3.22 жалуется на отсутствие зависимостей Aspect - PullRequest
0 голосов
/ 22 февраля 2019

Я пытаюсь добавить аннотацию @Retryable к одному из моих методов, и, поскольку я не могу использовать класс @Configuration, я делаю это с xml в моей пружине <beans>, например:

    <context:annotation-config />
    <aop:aspectj-autoproxy />
    <bean id="retryAdvice"
          class="org.springframework.retry.interceptor.RetryOperationsInterceptor"/>

Мое приложение жалуется на то, что Pointcut недоступно

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.aop.config.internalAutoProxyCreator': Initialization of bean failed; nested exception is java.lang.NoClassDefFoundError: org/aspectj/lang/annotation/Pointcut
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562)
Caused by: java.lang.NoClassDefFoundError: org/aspectj/lang/annotation/Pointcut
    at org.springframework.aop.aspectj.annotation.AbstractAspectJAdvisorFactory.<clinit>(AbstractAspectJAdvisorFactory.java:62)
Caused by: java.lang.ClassNotFoundException: org.aspectj.lang.annotation.Pointcut
    at java.net.URLClassLoader.findClass(URLClassLoader.java:382)

, но оно находится в моем classpath согласно maven как часть aspectjweaver 1.8.9

# mvn dependency:tree
[INFO] +- org.springframework.retry:spring-retry:jar:1.2.4.RELEASE:compile
[INFO] +- org.springframework:spring-aop:jar:4.3.22.RELEASE:compile
[INFO] |  \- org.springframework:spring-beans:jar:4.3.22.RELEASE:compile
[INFO] +- org.springframework:spring-core:jar:4.3.22.RELEASE:compile
[INFO] +- org.springframework:spring-aspects:jar:4.3.22.RELEASE:compile
[INFO] |  \- org.aspectj:aspectjweaver:jar:1.8.9:compile

Как выЯ вижу, что я использую Spring 4.3.22, но похоже, что добавления spring-aspects в качестве зависимости недостаточно, чтобы заставить spring-retry работать, даже если он тянет aspectjweaver .. Я что-то упустил?

...