我刚开始使用spring cloud数据流项目。
我尝试使用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>
我得到的错误是(带有漂亮的弹簧启动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);
}
}
答案 0 :(得分:1)
例如,我生成了一个具有以下两个启动器的
与典型的启动程序不同,流和任务启动程序可用作独立应用程序,因此您可以单独对它们进行自定义。如果您必须将多个应用程序组合为一个复合单元,则必须使用AggregateBuilder
API - 请参阅此sample。
我还发现除非我明确导入他们的配置文件,否则文件和兔子组件甚至都没有被引入。
是 - 请查看reference guide了解自定义步骤。