Отключить загрузку DataSourceAutoConfiguration Spring - PullRequest
1 голос
/ 04 мая 2020

У меня есть библиотека, которая использует spring-jdb c, библиотека содержит общие служебные методы, которые необходимо стандартизировать для нескольких проектов. Библиотека, используемая в другом приложении весенней загрузки, приводит к сбою проекта без компонента в типе DataSourceConfuguration Exception.

Я прочитал советы по исключению DataSourceConfiguration в @SpringBootApplication, но это будет означать внесение изменений в каждое приложение, использующее библиотека независимо от того, нужен ли приложению источник данных или нет.

@Configuration
@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})
public class MyConfiguration {
}

Другой вариант - исключить DataSourceConfiguration в spring.factories самой библиотеки, но тогда он остановит возможность автоматической настройки любого приложения, использующего библиотека и придется вручную определять источник данных.

spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration

Есть ли возможный способ заставить эту ситуацию работать для библиотеки и любого другого проекта, который хочет использовать библиотеку, но не должен определять источник данных и все еще функционирует как обычное приложение Spring Boot?

1 Ответ

0 голосов
/ 04 мая 2020

Ниже приводится документация Spring

import org.springframework.boot.autoconfigure.*;
import org.springframework.boot.autoconfigure.jdbc.*;
import org.springframework.context.annotation.*;

@Configuration
@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})
public class MyConfiguration {
}

https://docs.spring.io/spring-boot/docs/1.3.8.RELEASE/reference/html/using-boot-auto-configuration.html

...