java.lang.NoClassDefFoundError: org / apache / cxf / jaxrs / model / doc / DocumentationProvider - PullRequest
0 голосов
/ 30 апреля 2018

Я пытаюсь интегрировать чванство. Я выполняю следующие шаги: здесь . контекст приложения и pom.xml настроены одинаково. при перезапуске tomcat получаю эту ошибку.

2018-04-30 14:01:33 ERROR ContextLoader:351 - Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'productAPIServer': Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: org/apache/cxf/jaxrs/model/doc/DocumentationProvider
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1583)

Я включил

 <dependency>
 <groupId>org.apache.cxf</groupId>
 <artifactId>cxf-rt-rs-service-description-swagger</artifactId>
 <version>3.1.7</version>
 </dependency>
 <dependency>
 <groupId>org.apache.cxf</groupId>
 <artifactId>cxf-rt-rs-service-description</artifactId>
 <version>3.1.7</version>
 </dependency>
 <dependency>
 <groupId>org.apache.cxf</groupId>
 <artifactId>cxf-core</artifactId>
 <version>3.1.7</version>
 </dependency>

Изменения в контексте xml файла:

<bean id="jacksonJsonProviderFasterxml" class="com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider" />
<bean id="swagger2Feature"   class="org.apache.cxf.jaxrs.swagger.Swagger2Feature">

<property name="basePath" value="/staticdata-web-service"/>
<property name="license" value=""/>
<property name="licenseUrl" value=""/>
<property name="title" value="Static data web service"/>
</bean>

Добавлена ​​функция

<jaxrs:features>
<ref bean="swagger2Feature" />
</jaxrs:features>

1 Ответ

0 голосов
/ 30 апреля 2018

У вас несоответствие версии. При поиске Maven для этого класса вы обнаружите, что пакет DocumentationProvider изменился с версии 3.0.x на 3.1.x

орг / апач / CXF / jaxrs / модель / DOC / DocumentationProvider

до

орг / апач / CXF / jaxrs / модель / WADL / DocumentationProvider

Трудно сказать, где находится несоответствие, не зная всей вашей зависимости сборки и пакета. Но вы можете запустить

 mvn dependency:tree -Dverbose

в папке вашего проекта, чтобы увидеть, какие версии пакетов поставлены под вопрос для поднятия ClassNotFoundException.

...