Программно перезапустить приложение Spring Boot / Обновить контекст Spring
Я пытаюсь программно перезапустить приложение Spring без вмешательства пользователя.
По сути, у меня есть страница, которая позволяет переключать режим приложения (фактически означает переключение текущего активного профиля), и, насколько я понимаю, я должен перезапустить контекст.
В настоящее время мой код очень прост, он просто для перезапуска (это, кстати, Котлин):
context.close()
application.setEnvironment(context.environment)
ClassUtils.overrideThreadContextClassLoader(application.javaClass.classLoader)
context = application.run(*argsArray)
Однако момент, когда я делаюcontext.close()
JVM существует немедленно. Я также пыталсяcontext.refresh()
но это, кажется, просто убивает Tomcat / Jetty (пробовал оба на всякий случай, если это была проблема Tomcat), и тогда ничего не происходит.
Я также виделПрограммно перезапустить приложение Spring Boot но, похоже, из этих ответов у меня ничего не получается. Кроме того, я посмотрел на Spring Actuator, который предположительно имеет/restart
конечная точка, но этого, кажется, больше нет?
Помощь будет принята с благодарностью. Благодарю.