我想在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文件$
1条答案
按热度按时间omvjsjqw1#
升级版
正如@antonitvinenko所建议的那样,我在junit中使用kafka时遇到了一个异常。我的问题是。
我添加了这个依赖项来修复它(请参见问题):
还有,我以前
2.0.1
Kafkajunit和Kafka2.11版本:古老的
我决定使用另一个Kafkajunit图书馆的salesforce。我添加了这组依赖项:
现在我的测试效果很好。
你可以在这里看到这个库的使用说明。
我试图将Kafka版本增加到2.1.1,但我有一个例外:
java.lang.noclassdeffounderror:scala/function1
所以,我认为主要的问题是Kafka版本的使用。