diff --git a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/data/MongoRepositoriesAutoConfiguration.java b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/data/MongoRepositoriesAutoConfiguration.java index 6978513750a..70d85507e5d 100644 --- a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/data/MongoRepositoriesAutoConfiguration.java +++ b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/data/MongoRepositoriesAutoConfiguration.java @@ -55,16 +55,20 @@ public class MongoRepositoriesAutoConfiguration { @Autowired private MongoProperties config; + private Mongo mongo; @PreDestroy public void close() throws UnknownHostException { - mongo().close(); + if (this.mongo != null) { + this.mongo.close(); + } } @Bean @ConditionalOnMissingBean(Mongo.class) Mongo mongo() throws UnknownHostException { - return this.config.mongo(); + this.mongo = this.config.mongo(); + return this.mongo; } @Bean