我刚开始使用spring cloud dataflow项目。
我尝试使用http://start-scs.cfapps.io推荐的 spring initialr 创建一些自定义组件
我发现快速选择的一些组件正在发生冲突
例如,我生成了一个具有以下两个启动器的
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-stream-binder-rabbit</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud.stream.app</groupId>
<artifactId>spring-cloud-starter-stream-sink-rabbit</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud.stream.app</groupId>
<artifactId>spring-cloud-starter-stream-source-file</artifactId>
</dependency>
我得到的错误是(使用漂亮的 spring boot 1.4.0 诊断)是
***************************
APPLICATION FAILED TO START
***************************
Description:
There is a circular dependency between 2 beans in the application context:
- fileSourceFlow defined in org.springframework.cloud.stream.app.file.source.FileSourceConfiguration
- org.springframework.cloud.stream.app.rabbit.sink.RabbitSinkConfiguration
- amqpChannelAdapter
我还发现文件和兔子组件甚至没有被引入,除非我明确导入它们的配置文件。
@SpringBootApplication
@Import(
{
FileSourceConfiguration.class,
RabbitSinkConfiguration.class
}
)
public class CommonfileingestorApplication {
public static void main(String[] args) {
SpringApplication.run(CommonfileingestorApplication.class, args);
}
}