Java 如何在spring boot中跳过应用程序启动时的mongodb/
我在spring boot应用程序中使用mongodb,配置如下Java 如何在spring boot中跳过应用程序启动时的mongodb/,java,spring,mongodb,spring-boot,Java,Spring,Mongodb,Spring Boot,我在spring boot应用程序中使用mongodb,配置如下 spring: data: mongodb: authentication-database: admin database: log username: ${MONGO_DATASOURCE_USERNAME} password: ${MONGO_DATASOURCE_PASSWORD} 当我的mongodb启动并运行时,一切正常 但当我在Jenkins(没有安装mo
spring:
data:
mongodb:
authentication-database: admin
database: log
username: ${MONGO_DATASOURCE_USERNAME}
password: ${MONGO_DATASOURCE_PASSWORD}
当我的mongodb启动并运行时,一切正常
但当我在Jenkins(没有安装mongodb的地方)上部署它时,我发现我的spring应用程序每秒都在尝试连接mongodb,这使得我的应用程序启动时间非常长
我的Postgres数据库也有类似的情况(Jenkins上没有Postgres,但我的应用程序应该可以启动而不会失败),但我可以跳过Postgres或启动应用程序,即使我们在我的yaml的数据源标记文件中使用continue on error:true
属性来处理Postgres时出错
我能为mongodb做些什么吗
即使我们没有mongodb,我的spring boot应用程序也应该启动
我尝试了下面的代码,但没有成功
@SpringBootApplication(exclude = {
MongoAutoConfiguration.class,
MongoDataAutoConfiguration.class
})
谢谢 您可以使用@Profile()根据运行的配置文件(阶段、生产、测试)创建不同的配置。您可以使用环境变量spring.profiles.active设置spring概要文件,我们已经配置了它,但是正如我所说的,我想保持这个配置,只是想确保我的
spring启动不会失败,即使mongodb不在那里
,我想实现延迟加载
之类的东西。这里有一个类似的问题,有各种解决方案:@prasad_uu我尝试了给出的建议,但没有成功<代码>无法关闭ApplicationContext并且我的应用程序现在没有启动:(