Modifique perfis ativos e atualize o tempo de execução do ApplicationContext em um aplicativo Spring Boot

Eu tenho um aplicativo Web de inicialização do Spring. O aplicativo é configurado via classes java usando o@Configurable anotação. Eu introduzi dois perfis: 'install', 'normal'. Se o perfil de instalação estiver ativo, nenhum dos Beans que requerem conexão com o DB será carregado. Quero criar um controlador no qual o usuário possa configurar os parâmetros de conexão db e, quando terminar, quero mudar o perfil ativo de 'install' para 'normal' e atualizar o contexto do aplicativo, para que o Spring possa iniciar todos os beans necessários Fonte de dados do banco de dados.

Posso modificar a lista de perfis ativos a partir do código, sem problemas, mas quando tento atualizar o contexto do aplicativo, recebo o seguinteexceção:

`java.lang.IllegalStateException:
 GenericApplicationContext does not support multiple refresh attempts: just call 'refresh' once`

É assim que eu inicializo meu aplicativo de inicialização do Spring:

`new SpringApplicationBuilder().sources(MyApp.class)
.profiles("my-profile").build().run(args);` 

Alguém sabe como iniciar o aplicativo de inicialização por primavera que permite atualizar o contexto do aplicativo várias vezes?

questionAnswers(1)

yourAnswerToTheQuestion