KafkaEmbedded бросая NoSuchMethodError: org. apache .kafka.common.config.ConfigDef $ ValidString - PullRequest
0 голосов
/ 05 февраля 2020

Я пытаюсь написать функциональный тест, используя встроенную кафку. но ошибка ниже при запуске кластера:

Исключение или ошибка привели к прерыванию запуска: org. apache .kafka.common.config.ConfigDef $ ValidString. (Ljava / util / List; Lorg / apache / kafka / common / config / ConfigDef $ 1;) V java .lang.NoSuchMethodError: org. apache .kafka.common.config.ConfigDef $ ValidString. (Ljava / util / List; Lorg / apache / kafka / common / config / ConfigDef $ 1;) V at org. apache .kafka.common.config.ConfigDef $ ValidList. (ConfigDef. java: 895) `

My Pom. xml имеет эту зависимость

    `
        <dependency>
        <groupId>net.manub</groupId>
        <artifactId>scalatest-embedded-kafka_2.11</artifactId>
        <version>0.10.0</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.spark</groupId>
        <artifactId>spark-streaming-kafka-0-10-assembly_2.11</artifactId>
        <version>2.2.0</version>
    </dependency>
    <dependency>
        <groupId>org.apache.kafka</groupId>
        <artifactId>kafka_2.11</artifactId>
        <version>2.1.0</version>
        <classifier>test</classifier>
        <scope>test</scope>
    </dependency>`

Ответы [ 2 ]

0 голосов
/ 07 февраля 2020

Пожалуйста, смотрите build.sbt или pom. xml для scalatest-embedded-kafka 0.10.0. Оба используют kafkaVersion = "0.10.1.0".

В связанных файлах вы можете видеть, что зависимость kafka_2.11 не относится к области действия при условии , поэтому вам, вероятно, вообще не нужно включать зависимость kafka_2.11. Если вы по какой-то причине включаете его, вы, как правило, хотите убедиться, что все сигнатуры классов, необходимые для транзитивной зависимости, присутствуют. Файл README (тот же репо с использованием ссылки на build.sbt выше) подтверждает, что вам, вероятно, не нужна зависимость от kafka. Ваш инструмент сборки должен автоматически вводить любые переходные зависимости. Я бы попытался удалить его или изменить версию, если это не помогло.

0 голосов
/ 05 февраля 2020

Вы скучаете по клиентам

    <dependency>
        <groupId>org.apache.kafka</groupId>
        <artifactId>kafka-clients</artifactId>
        <version>2.1.0</version>
    </dependency>
...