嵌入式kafka不在一个ide中工作,而是在另一个ide中工作

问题描述 投票:0回答:1

我正在尝试 JUnit 测试类 https://github.com/spring-cloud/spring-cloud-stream/blob/main/binders/kafka-binder/spring-cloud-stream-binder-kafka-streams/src /test/java/org/springframework/cloud/stream/binder/kafka/streams/function/KafkaStreamsBinderWordCountBranchesFunctionTests.java 我下载了代码并尝试运行上面的 JUnit 测试。这使用了嵌入式Kafka。测试用例在 VisualStudio 代码中运行良好,但在 IntelliJ Community Edition 中失败并出现以下错误

`java.lang.NullPointerException:无法调用“org.springframework.kafka.test.EmbeddedKafkaBroker.getBrokersAsString()”,因为“embeddedKafka”为空

at org.springframework.kafka.test.utils.KafkaTestUtils.consumerProps(KafkaTestUtils.java:82)
at org.springframework.cloud.stream.binder.kafka.streams.function.KafkaStreamsBinderWordCountBranchesFunctionTests.setUp(KafkaStreamsBinderWordCountBranchesFunctionTests.java:64)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
Suppressed: java.lang.NullPointerException: Cannot invoke "org.apache.kafka.clients.consumer.Consumer.close()" because "org.springframework.cloud.stream.binder.kafka.streams.function.KafkaStreamsBinderWordCountBranchesFunctionTests.consumer" is null
    at org.springframework.cloud.stream.binder.kafka.streams.function.KafkaStreamsBinderWordCountBranchesFunctionTests.tearDown(KafkaStreamsBinderWordCountBranchesFunctionTests.java:74)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
    at java.base/java.util.Collections$UnmodifiableCollection.forEach(Collections.java:1092)
    ... 1 more`

它应该适用于所有 IDE。请帮忙。

spring-cloud-stream-binder-kafka embedded-kafka
1个回答
0
投票

发现一个奇怪的观察结果,如果运行单独的测试,那么它会失败,但是如果测试在类级别运行,那么它也可以在 IntelliJ 中工作,这与 Visual Studio 代码不同,它在类和单独的测试中都工作等级。 此问题不再是经纪人,可以关闭。

© www.soinside.com 2019 - 2024. All rights reserved.