spring cloud Stream input和output重名导致启动报错的问题
目前项目是用的springboot 2.0.5.RELEASE,版本号为:Finchley.SR2
客户端测试代码如下:
import org.springframework.cloud.stream.annotation.Input;
import org.springframework.cloud.stream.annotation.Output;
import org.springframework.messaging.MessageChannel;
import org.springframework.messaging.SubscribableChannel;
public interface StreamClient {
String INPUT = "input";
@Input(StreamClient.INPUT)
SubscribableChannel input();
@Output(StreamClient.INPUT)
MessageChannel output();
}
接收方代码如下:
import lombok.extern.slf4j.Slf4j;
import org.springframework.cloud.stream.annotation.EnableBinding;
import org.springframework.cloud.stream.annotation.StreamListener;
import org.springframework.messaging.handler.annotation.SendTo;
import org.springframework.stereotype.Component;
@Component
@EnableBinding(StreamClient.class)
@Slf4j
public class StreamReceiver {
@StreamListener(StreamClient.INPUT)
public void processInput(String message) {
log.info("streamReceiver={}", message);
}
@StreamListener(StreamClient.OUTPUT)
public void processOutput(String message) {
log.info("streamReceiver={}", message);
}
}
以下时报错情况:
org.springframework.beans.factory.BeanDefinitionStoreException: Invalid bean