【问题标题】:Update spring-kafka-test to 2.2.x but still use old kafka-client 1.1.1 with junit5 and spring boot 2将 spring-kafka-test 更新到 2.2.x,但仍然使用带有 junit5 和 spring boot 2 的旧 kafka-client 1.1.1
【发布时间】:2019-06-17 14:09:18
【问题描述】:

我目前正在使用spring boot 2和junit 5。我想使用spring-kafka-test进行测试,但是我使用的spring-kafka版本是2.1.8.RELEASE。有了这个,我相信它不可能使用EmbeddedKafkaBroker,因为这是 2.2.x 中的东西。

我使用的 kafka-client 是 1.1.0。我查看了https://spring.io/projects/spring-kafka 中提到的兼容性矩阵,它似乎不适用于客户端 1.1.0,只是想知道是否可以仅将 spring-kafka-test 更新为 2.2.3.RELEASE 以使用EmbeddedKafkaBroker使用 Junit 5,同时仍使用旧的 kafka-client 1.1.0。

有人试过这样的吗?

【问题讨论】:

    标签: spring-boot spring-kafka junit5 spring-boot-test spring-kafka-test


    【解决方案1】:

    为什么不把所有东西都升级到 2.2.3 呢?您可以将 2.0.1 客户端与较旧的代理一起使用。

    2.2.3 测试 jar 可能适用于 2.1.x,但您可能需要 2.0.1 客户端。

    JUnit 5 可以与 spring-kafka-test 2.1.x 一起使用,但您需要在类路径中使用 jupiter vintage jar,因为代理依赖于一些 JUnit4 类。

    See the discussion on this issue.

    【讨论】:

    • 谢谢,我能够按照您的解释进行操作。我将测试升级到 2.2.3 并使用了确实有效的 2.0.1。我收到这些org.apache.kafka.test.TestUtils] [] [] [Error deleting C:\Users\ADAM\AppData\Local\Temp\kafka-680085887876564956] java.nio.file.FileSystemException: C:\Users\ADAM\AppData\Local\Temp\kafka-680085887876564956\version-2\log.1: The process cannot access the file because it is being used by another process. 用于删除 Windows 上的日志消息。
    • Windows 上存在一些已知问题,请参阅discussion here,其中包含针对 kafka/zookeeper 提出的问题的链接。
    猜你喜欢
    • 2020-02-04
    • 2020-10-12
    • 1970-01-01
    • 2019-01-14
    • 2020-05-29
    • 1970-01-01
    • 2020-07-10
    • 2020-07-21
    • 1970-01-01
    相关资源
    最近更新 更多