Встроенные тестовые примеры Kafka являются ошибкой после добавления jsonschema2pojo-core

У меня есть приложение, созданное с использованием библиотек Spring boot и Spring kafka. Теперь я добавил библиотеку jsonschema2pojo-core в свой файл pom. После добавления этого файла jar мои тестовые примеры не работают с ошибкой ниже

Вызвано: org.springframework.beans.factory.BeanCreationException: ошибка создания bean-компонента с именем «embeddedKafka»: не удалось вызвать метод инициализации; вложенное исключение - java.lang.NoClassDefFoundError: scala / runtime / java8 / JFunction0 $ mcZ $ sp Вызвано: java.lang.NoClassDefFoundError: scala / runtime / java8 / JFunction0 $ mcZ $ sp

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.2.1.RELEASE</version>
    <relativePath />
</parent>

    <dependency>
        <groupId>org.springframework.kafka</groupId>
        <artifactId>spring-kafka</artifactId>
    </dependency>
    <!-- Test Dependencies -->
    <dependency>
        <groupId>org.springframework.kafka</groupId>
        <artifactId>spring-kafka-test</artifactId>
        <scope>test</scope>
    </dependency>

      <dependency>
        <groupId>org.jsonschema2pojo</groupId>
        <artifactId>jsonschema2pojo-core</artifactId>
        <version>1.0.2</version>
      </dependency>

person VKR    schedule 10.02.2021    source источник


Ответы (1)


Вероятно, это похоже на этот https://docs.spring.io/spring-kafka/docs/2.5.11.RELEASE/reference/html/#jacksonscala-incompatibility

с библиотекой, втягивающей несовместимую библиотеку scala.

Да, добавление

<dependency>
    <groupId>org.scala-lang</groupId>
    <artifactId>scala-library</artifactId>
    <version>2.12.11</version>
</dependency>

исправил это для меня; но я не могу гарантировать, что jsonschema2pojo будет работать с этой версией.

Люди из scala печально известны нарушением изменений API в выпусках исправлений.

person Gary Russell    schedule 10.02.2021
comment
Я только что протестировал их руководство по началу работы, и, похоже, он работает нормально. - person Gary Russell; 11.02.2021