Solución:
Así es como lo hago:
@SpringBootApplication(exclude = {
MongoAutoConfiguration.class,
MongoDataAutoConfiguration.class
})
o como sugirió Dan Oak:
spring.autoconfigure.exclude=
org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration,
org.springframework.boot.autoconfigure.data.mongo.MongoDataAutoConfiguration
Como señaló Andy Wilkinson en los comentarios, cuando use EnableAutoConfiguration con lista de exclusión, asegúrese de que no haya otras clases anotadas con EnableAutoConfiguration o SpringBootApplication.
Mi caso de uso fue ligeramente diferente. Tenía un requisito para 2 bases de datos diferentes en el mismo proyecto. Extendí las clases de configuración automática y agregué una anotación de perfil.
@Profile("mongo")
@Configuration
public class CustomMongoAutoConfiguration extends MongoAutoConfiguration {
public CustomMongoAutoConfiguration(
MongoProperties properties,
ObjectProvider<MongoClientOptions> options,
Environment environment) {
super(properties,options,environment);
}
}
Y
@Profile("mongo")
@Configuration
@EnableConfigurationProperties(MongoProperties.class)
public class CustomMongoDataAutoConfiguration extends MongoDataAutoConfiguration {
public CustomMongoDataAutoConfiguration(
ApplicationContext applicationContext,
MongoProperties properties) {
super(applicationContext,properties);
}
}
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)