如何解决kafka的junit依赖问题?

piv4azn7  于 2021-06-06  发布在  Kafka
关注(0)|答案(1)|浏览(515)

我想在junit中使用kafka,所以我添加了以下依赖项:

<dependency>
    <groupId>net.mguenther.kafka</groupId>
    <artifactId>kafka-junit</artifactId>
    <version>2.1.0</version>
    <scope>test</scope>
</dependency>

在当地效果很好。但在Jenkins身上我犯了个错误:
java.lang.noClassDefScala/数学/排序
如果我加上 scala-library 依赖关系(版本 2.1.12 ),我得到:
java.lang.noclassdeffound com.typesafe.scalalogging.logger文件$
还有,我有几个 Apache Beam 依赖关系 2.9.0 版本。
我可以检查什么来解决这个问题?
升级版本:
如果添加此依赖项:

<dependency>
    <groupId>com.github.charithe</groupId>
    <artifactId>kafka-junit</artifactId>
    <version>${kafkaJunit.version}</version>
</dependency>

我得到:
java.lang.noclassdeffounderror:scala/matcherror
如果我加上 scala-library (版本 2.1.12 ),我得到:
java.lang.nosuchmethoderror:scala.predef$.refarrayops([ljava/lang/object;)[ljava/lang/object;
最后一个版本,我得到:
java.lang.noclassdeffound com.typesafe.scalalogging.logger文件$

omvjsjqw

omvjsjqw1#

升级版
正如@antonitvinenko所建议的那样,我在junit中使用kafka时遇到了一个异常。我的问题是。
我添加了这个依赖项来修复它(请参见问题):

<dependency>
    <groupId>org.apache.curator</groupId>
    <artifactId>curator-test</artifactId>
    <version>2.12.0</version>
    <exclusions>
        <exclusion>
           <groupId>org.apache.zookeeper</groupId>
            <artifactId>zookeeper</artifactId>
        </exclusion>
    </exclusions>
    <scope>test</scope>
</dependency>

还有,我以前 2.0.1 Kafkajunit和Kafka2.11版本:

<dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka_2.11</artifactId>
    <version>${kafkaVersion}</version>
    <scope>test</scope>
</dependency>

古老的
我决定使用另一个Kafkajunit图书馆的salesforce。我添加了这组依赖项:

<!-- Declare kafka-junit4 dependency -->
<dependency>
    <groupId>com.salesforce.kafka.test</groupId>
    <artifactId>kafka-junit4</artifactId>
    <version>3.1.1</version>
    <scope>test</scope>
</dependency>

<!-- Include Kafka 2.0.x -->
<dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka_2.11</artifactId>
    <version>2.0.1</version>
    <scope>test</scope>
</dependency>
<dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka-clients</artifactId>
    <version>2.0.1</version>
    <scope>test</scope>
</dependency>

现在我的测试效果很好。
你可以在这里看到这个库的使用说明。
我试图将Kafka版本增加到2.1.1,但我有一个例外:
java.lang.noclassdeffounderror:scala/function1
所以,我认为主要的问题是Kafka版本的使用。

相关问题