APPLICATION FAILED TO START
Description:
The dependencies of some of the beans in the application context form a cycle:
略
↓
sqlSessionFactory defined in class path resource [com/suike/config/database/MyBatisConfig.class]
┌─────┐
| dataSource defined in class path resource [com/suike/config/database/MyBatisConfig.class]
↑ ↓
| dataSourceDev defined in class path resource [com/suike/config/database/dataSource/DruidDBConfigDev.class]
↑ ↓
| dataSourceInitializer
└─────┘
解决办法
然后抛出一堆的:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘dataSourceDev’ defined in class path resource [xxx类]: Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘dataSourceInitializer’: Invocation of init method failed; nested exception is org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name ‘dataSource’: Requested bean is currently in creation: Is there an unresolvable circular reference?
保持原来的配置,在Spring boot启动的时候排除DataSourceAutoConfiguration,并另外导入MyBatisConfig 加上@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
@Import({MyBatisConfig.class})
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
public class App extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(App.class, args);
}
}