Спорадический NoClassDefFoundError для org/aspectj/runtime/reflect/JoinPointImpl

Мы используем аспект (1.8.5) с Java (1.7) и Spring (3.2.3). Мы используем плетение времени загрузки. Время от времени мы видим эти ошибки в журнале нашего приложения при его запуске. Иногда запуск приложения не удается (из-за ошибок), а иногда приложение запускается корректно.

Ошибка:

ОШИБКА TaskUtils.java:95 - Произошла непредвиденная ошибка в запланированной задаче. java.lang.NoClassDefFoundError: org/aspectj/runtime/reflect/JoinPointImpl в org.aspectj.runtime.reflect.Factory.makeJP(Factory.java:164) ~[aspectjweaver-1.8.5.jar:1.8.5 ]

Это происходит несколько раз в течение примерно полминуты, а затем приложению удается преодолеть это или нет.

Возможно, тот факт, что мы работаем на Spring, может вызвать некоторые помехи?

приложениеContext.xml:

<context:load-time-weaver aspectj-weaving="on"/>

Контекст Tomcat.xml:

<Loader loaderClass="org.springframework.instrument.classloading.tomcat.TomcatInstrumentableClassLoader"/>

В нашем pom.xml у нас есть эти зависимости (относящиеся к аспекту J и весне):

  <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-aop</artifactId>
    <version>${springframework.version}</version>
  </dependency>

  <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-instrument-tomcat</artifactId>
    <version>${springframework.version}</version>
    <scope>runtime</scope>
  </dependency>

  <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-aspects</artifactId>
    <version>${springframework.version}</version>
  </dependency>

  <dependency>
    <groupId>org.aspectj</groupId>
    <artifactId>aspectjweaver</artifactId>
    <version>1.8.5</version>
  </dependency>

Может кто-нибудь пролить свет на это?

Спасибо.


person Alexandra Shapilov    schedule 09.08.2015    source источник


Ответы (1)


Попробуйте добавить следующую зависимость:

<dependency>
    <groupId>org.aspectj</groupId>
    <artifactId>aspectjrt</artifactId>
    <version>1.8.6</version>
</dependency>
person Karthik    schedule 09.08.2015