0

我有一个使用 Spring boot 和 Spring kafka 库创建的应用程序。现在我将 jsonschema2pojo-core 库添加到我的 pom 文件中。添加此 jar 文件后,我的测试用例失败并出现以下错误

原因:org.springframework.beans.factory.BeanCreationException:创建名为“embeddedKafka”的bean时出错:调用init方法失败;嵌套异常是 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>
4

1 回答 1

0

它可能类似于此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 更改而臭名昭著。

于 2021-02-10T19:35:35.443 回答