Spring Boot - конфигурирайте свойствата на буркан, включен като зависимост в друг буркан

Имам уеб приложение A на Spring Boot и то зависи от библиотека с буркани на Spring Boot B. Имам някои свойства, които искам да конфигурирам в B и не искам клиентските приложения (напр. уеб приложението A) да ги конфигурират. Имам тези файлове със свойства в B.

application-dev.properties

application-stage.properties

applicatino-live.properties

Проблемът е, че тези свойства не се разпознават, когато библиотеката се добавя като зависимост в уеб приложение A. Какъв е начинът да се постигне това?


person Toseef Zafar    schedule 29.09.2020    source източник
comment
Ако това са 2 приложения за пролетно зареждане, това не е възможно.   -  person M. Deinum    schedule 29.09.2020
comment
да, това са приложения за пролетно зареждане   -  person Toseef Zafar    schedule 29.09.2020
comment
Тогава няма да работи поради специалната структура на буркана с мазнини Spring Boot.   -  person M. Deinum    schedule 29.09.2020


Отговори (1)


PropertySource анотацията може да се използва в конфигурационен клас на webapp A, за да постигнете това, което търсите:

@Configuration
@PropertySource("classpath:application-dev.properties"),
@PropertySource("classpath:application-stage.properties"),
@PropertySource("classpath:application-live.properties")
public class WebappAConfiguration {
    
}

Намерих също реда, в който пролетното зареждане търси външна конфигурация, полезно тук.

person munzld    schedule 29.09.2020
comment
Използването на spring.profiles.active по този начин е лоша идея. Това е String[], който може да съдържа множество профили, които след това биха се счупили. Spring Boot ще зареди автоматично тези файлове от classpath, ако те присъстват. - person M. Deinum; 29.09.2020
comment
Ааа @M.Deinum прав си, премахнах това предложение. - person munzld; 29.09.2020