Apache kafka 弹簧卡夫卡(2.2.7.版本)与。kafka客户端:嵌入式代理启动期间发生2.2.1 IOException

Apache kafka 弹簧卡夫卡(2.2.7.版本)与。kafka客户端:嵌入式代理启动期间发生2.2.1 IOException,apache-kafka,spring-kafka,spring-kafka-test,Apache Kafka,Spring Kafka,Spring Kafka Test,在依赖项检查警告的驱动下,我们尝试在设置中使用spring kafka:2.2.7将org.apache.kafka:kafka客户端的版本升级到2.2.1版本 因此,使用EmbeddedKafkaRule的测试在代理启动期间失败,IOException声明“未能加载/some/path…” java.io.IOException:在代理启动期间加载/Users/[..]/target/embedded kafka失败 在kafka.log.LogManager$$anonfun$createA

在依赖项检查警告的驱动下,我们尝试在设置中使用spring kafka:2.2.7将org.apache.kafka:kafka客户端的版本升级到2.2.1版本

因此,使用EmbeddedKafkaRule的测试在代理启动期间失败,IOException声明“未能加载/some/path…”

java.io.IOException:在代理启动期间加载/Users/[..]/target/embedded kafka失败
在kafka.log.LogManager$$anonfun$createAndValidateLodIRS$1.apply(LogManager.scala:152)
在kafka.log.LogManager$$anonfun$createAndValidateLodIRS$1.apply(LogManager.scala:149)
位于scala.collection.mutable.resizeblearray$class.foreach(resizeblearray.scala:59)
位于scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:48)
在kafka.log.LogManager.createAndValidateLogDirs(LogManager.scala:149)
在kafka.log.LogManager.(LogManager.scala:80)
在kafka.log.LogManager$.apply(LogManager.scala:953)
在kafka.server.KafkaServer.startup(KafkaServer.scala:237)
位于kafka.utils.TestUtils$.createServer(TestUtils.scala:132)
位于kafka.utils.TestUtils.createServer(TestUtils.scala)
位于org.springframework.kafka.test.EmbeddedKafkaBroker.AfterPropertieSet(EmbeddedKafkaBroker.java:223)
位于org.springframework.kafka.test.rule.EmbeddedKafkaRule.before(EmbeddedKafkaRule.java:109)
位于org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:46)
位于org.junit.rules.RunRules.evaluate(RunRules.java:20)
位于org.junit.runners.ParentRunner.run(ParentRunner.java:363)
位于org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:190)
位于org.junit.runner.JUnitCore.run(JUnitCore.java:137)
位于com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
位于com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
位于com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
位于com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
我们确保类路径上没有冲突版本的kafka客户端,并尝试将EmbeddedKafkaRule的logs.dir指定给maven的目标文件夹“target/embedded kafka”下的某个文件夹。 两者都没有成功


有人有相同的问题并解决了吗?

我只是测试了一下,没有任何问题

您是否按照中的说明操作

将spring kafka测试(版本2.2.x)与2.1.x kafka客户端jar一起使用时,需要覆盖某些可传递依赖项,如下所示:


org.springframework.kafka
春天卡夫卡
${spring.kafka.version}
org.springframework.kafka
弹簧卡夫卡试验
${spring.kafka.version}
org.apache.kafka
卡夫卡2.11
测试
org.apache.kafka
卡夫卡客户
2.1.1
org.apache.kafka
卡夫卡客户
2.1.1
测试
org.apache.kafka
卡夫卡2.12
2.1.1
测试
org.apache.kafka
卡夫卡2.12
2.1.1
测试
测试
请注意,当切换到scala 2.12(建议用于2.1.x及更高版本)时,2.11版本必须从spring kafka测试中排除


我只是测试了一下,没有任何问题

您是否按照中的说明操作

将spring kafka测试(版本2.2.x)与2.1.x kafka客户端jar一起使用时,需要覆盖某些可传递依赖项,如下所示:


org.springframework.kafka
春天卡夫卡
${spring.kafka.version}
org.springframework.kafka
弹簧卡夫卡试验
${spring.kafka.version}
org.apache.kafka
卡夫卡2.11
测试
org.apache.kafka
卡夫卡客户
2.1.1
org.apache.kafka
卡夫卡客户
2.1.1
测试
org.apache.kafka
卡夫卡2.12
2.1.1
测试
org.apache.kafka
卡夫卡2.12
2.1.1
测试
测试
请注意,当切换到scala 2.12(建议用于2.1.x及更高版本)时,2.11版本必须从spring kafka测试中排除


谢谢Gary,我不知道具体的文档。它解决了我的问题!谢谢Gary,我不知道具体的文档。它解决了我的问题!
java.io.IOException: Failed to load /Users/[..]/target/embedded-kafka during broker startup
at kafka.log.LogManager$$anonfun$createAndValidateLogDirs$1.apply(LogManager.scala:152)
at kafka.log.LogManager$$anonfun$createAndValidateLogDirs$1.apply(LogManager.scala:149)
at scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:48)
at kafka.log.LogManager.createAndValidateLogDirs(LogManager.scala:149)
at kafka.log.LogManager.<init>(LogManager.scala:80)
at kafka.log.LogManager$.apply(LogManager.scala:953)
at kafka.server.KafkaServer.startup(KafkaServer.scala:237)
at kafka.utils.TestUtils$.createServer(TestUtils.scala:132)
at kafka.utils.TestUtils.createServer(TestUtils.scala)
at org.springframework.kafka.test.EmbeddedKafkaBroker.afterPropertiesSet(EmbeddedKafkaBroker.java:223)
at org.springframework.kafka.test.rule.EmbeddedKafkaRule.before(EmbeddedKafkaRule.java:109)
at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:46)
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:190)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)