Я пытаюсь переместить мой application.yml
за пределы моего приложения в каталог пользователя, под которым работает приложение. Я знаю, что общий подход заключается в использовании параметров запуска во время выполнения, таких как -Dconfig.location=/path/to/external.properties
(что, кстати, я не могу заставить работать должным образом), но я должен быть в состоянии сделать это без изменения сценария запуска, если это вообще возможно ,
Моя цель состояла в том, чтобы сделать это в методе main()
файла приложения, который запускает приложение. В этом методе я обнаруживаю домашний каталог пользователя и пытаюсь установить его как свойство для приложения. Тем не менее, все попытки, которые я пробовал, заканчивались FileNotFound (application.yml
). Может кто-нибудь предложить какой-нибудь совет по достижению того, чего я хочу? Ниже приведена самая последняя попытка
static void main(String[] args) throws NoSuchAlgorithmException, IOException, URISyntaxException {
String configPath = "${System.getProperty('user.home')}"
ConfigurableApplicationContext applicationContext = new SpringApplicationBuilder(Angular4SpringbootApplication)
.properties("spring.config.name:application,conf",
"spring.config.location=classpath:$configPath/application.yml")
.build().run(args)
SpringApplication.run(Angular4SpringbootApplication, args)
}