弹簧嵌入式kafka出现问题 我想用它来测试我的kafka发送器/接收器。
当我尝试使用以下方式运行测试时:
@RunWith(MockitoJUnitRunner.class)
@SpringBootTest
@DirtiesContext
public class myTestClass {
@ClassRule
public static EmbeddedKafkaRule embeddedKafka =
new EmbeddedKafkaRule(1, true, RECEIVER_TOPIC);
@Test public void test() {
System.out.println("@Test");
}
}
我得到一个错误:
java.io.IOException: Failed to load C:\Users\username\AppData\Local\Temp\kafka-8251150311475880576 during broker startup
...
15:29:33.135 [main] ERROR kafka.log.LogManager - Shutdown broker because none of the specified log dirs from C:\Users\username\AppData\Local\Temp\kafka-8251150311475880576 can be created or validated
我确定作为用户我可以访问此目录,并且在运行测试时,我可以看到kafka在temp文件夹上创建了此类目录(空) 但仍然无法正常工作。
这是我的pom配置:
<dependency>
<groupId>org.springframework.kafka</groupId>
<artifactId>spring-kafka-test</artifactId>
<version>2.2.0.RC1</version>
</dependency>
<dependency>
<groupId>org.springframework.kafka</groupId>
<artifactId>spring-kafka</artifactId>
<version>2.2.0.RC1</version>
<scope>test</scope>
</dependency>
appliacation.properties:
kafka.bootstrap-servers= ${spring.embedded.kafka.brokers}
有趣的是,我从互联网上克隆了一个用于测试目的的kafka嵌入式示例,并且工作正常 但是当我将其应用到我的项目中时,它就会像上面那样粉碎。
任何建议我在做什么错了吗?