У меня есть приложение Java, которое управляется с помощью Maven. Проект включает понятия стран, которые делают что-то, например.Вложения Maven и зависимость зависят от Spring
public interface ICountry {
public void doSomething();
}
public class England implements ICountry {...}
public class Brazil implements ICountry {...}
public class CountryApp {
public static void main (String args[]) {
ICountry country = null;
// PSEUDOCODE:
// Retrieve a chosen implementation of ICountry using Spring
country.doSomething();
}
}
Из того, что я видел Spring я мог бы потенциально иметь конфигурационный файл один Spring для каждой страны. По-видимому, можно использовать Maven profiles, чтобы выбрать соответствующий файл конфигурации, используя элемент в профиле. Однако в документации указано, что профили предназначены для поддержки построения в разных средах, а не для разных конфигураций приложения.
Это звучит как разумный подход? Если кто-то знает о более качественном или «более стандартном» способе, пожалуйста, дайте мне знать :)
EDIT: В конечном счете, я хотел бы иметь возможность создать .jar для каждой страны. например
- MyApp-england.jar,
- MyApp-brazil.jar и т.д.
Вы хотите протестировать каждую из стран? Или вы хотите выбрать нужную страну с учетом тестовой среды? – YMomb
Как вы определяете, какую «страну» следует использовать? Использование DI для впрыскивания стран кажется немного выключенным. – beerbajay
А как насчет Locale? – YMomb