【发布时间】:2020-09-08 12:07:49
【问题描述】:
获取此 Esception java.lang.NoClassDefFoundError: org/apache/kafka/streams/internals/QuietStreamsConfig。
可能是因为依赖冲突。 pom.xml中的相关jar
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-streams-test-utils</artifactId>
<version>5.5.0-ccs</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-streams</artifactId>
<version>1.0.1</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
<exclusion>
<groupId> org.apache.kafka</groupId>
<artifactId>kafka-clients</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-clients</artifactId>
<version>1.0.1</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</exclusion>
</exclusions>
</dependency>
当我运行这个命令时 ** mvn 依赖:tree -Dverbose -Dincludes=org.apache.kafka **
com.walmart.sims.ica:fault-handler:jar:0.0.1-SNAPSHOT
[INFO] +- org.apache.kafka:kafka-streams-test-utils:jar:5.5.0-ccs:test
[INFO] | +- (org.apache.kafka:kafka-streams:jar:5.5.0-ccs:test - omitted for conflict with 1.0.1)
[INFO] | \- (org.apache.kafka:kafka-clients:jar:5.5.0-ccs:test - omitted for conflict with 1.0.1)
[INFO] +- org.apache.kafka:kafka-streams:jar:1.0.1:compile
[INFO] | \- org.apache.kafka:connect-json:jar:1.0.1:compile
[INFO] | \- org.apache.kafka:connect-api:jar:1.0.1:compile
[INFO] \- org.apache.kafka:kafka-clients:jar:1.0.1:compile
因此,由于冲突,我的测试依赖项被省略了,因此我在运行测试时遇到 ClassNotFoundException。
我应该如何解决冲突,以便 test-utils 的依赖项在测试范围内可用,否则在编译范围内使用 kafka-streams 和 kafka-clients 依赖项?
【问题讨论】:
标签: java maven apache-kafka