在JBoss中部署时覆盖spring-boot应用程序的属性
问题描述:
我有一个基于YAML的配置的基于Spring-Boot的应用程序,我在使用java -jar app.war -Dnamespace.properties=different_value
运行时没有问题,但现在我必须将应用程序部署到JBoss EAP,我成功构建了war文件,但我想修改这些属性(覆盖一些YAML值),而不需要修改war。在JBoss中部署时覆盖spring-boot应用程序的属性
- JNDI从Java属性:comp/env的。
- Java系统属性(System.getProperties())
作为替代方案,但我不知道如何设置的。一些想法?
奖金:这将是很好的修改在运行时的性能,而无需重新部署应用程序
答
您可以在standalone.xml添加系统属性中的JBoss EAP
<system-properties>
<property name="my.property" value="Hello"/>
</system-properties>
系统属性可以在运行时使用CLI或Web界面和其他方式进行更改。
如果您的应用程序正在重新加载,则取决于属性的使用位置。
你想重写什么属性?
属性是特定于我们的应用程序的,特别是外部休息端点必须在环境之间不同。但是现在你的方法已经足够了。我应该看看如何处理热重新加载的属性 – carpinchosaurio