我有2个@KafkaListener方法在同一个tipic TopicA 上监听,
但它们也注明了不同的@Profile(“dev”)和@Profile(“prod”),
我设置 spring.profiles.active = dev ,并向TopicA发送消息,两种方法都可以使用消息。
使用@Profile知道@KafkaListener的已知错误吗?或者我的配置有问题?
答案 0 :(得分:1)
这是正确的,因为@KafkaListener
没有呈现bean。 @Profile
只能限制bean - @Configuration
类中的工厂方法或扫描@Service
s:http://docs.spring.io/spring/docs/current/spring-framework-reference/html/beans.html#beans-definition-profiles-java
因此,您需要的是将这些方法分发到不同的类并将@Profile
移动到它们的bean定义级别。