You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Quarkus无需重新打包uber jar如何读取更新的application.properties配置?

Quarkus 运行时覆盖内置配置问题解答

完全可以在不重新打包jar包的前提下覆盖Quarkus内置的application.properties配置,也支持运行时指定自定义配置文件路径,具体实现方式如下:

  • 方式1:启动时指定外部配置文件路径

    直接在启动命令中添加quarkus.config.locations系统参数指定自定义配置文件的绝对路径即可,示例命令如下:

    java -Dquarkus.config.locations=/path/to/custom-application.properties -jar your-app.jar
    

    如需加载多个配置文件,用逗号分隔多个路径即可,外部配置文件中同key的配置会自动覆盖jar包内置的配置值。

  • 方式2:使用默认扫描的外部配置路径

    Quarkus启动时会自动扫描jar包同级目录下config文件夹内的application.properties配置,优先级高于内置配置。你只需要在jar包运行目录下创建config文件夹,放入修改后的配置文件,重启服务即可生效,无需添加任何启动参数。

  • 方式3:启动参数直接覆盖单条配置

    如果仅需要修改少量配置项,可以直接在启动命令中通过系统参数指定配置值,不需要单独准备配置文件,示例如下:

    # 示例:修改服务启动端口为8082
    java -Dquarkus.http.port=8082 -jar your-app.jar
    

以上方法对普通jar包和uber(fat)jar包均生效,所有外部配置的优先级都高于jar包内置的application.properties,完全不需要重新打包修改内置文件。
如果需要实现不重启服务就能动态加载更新后的配置,可以给使用@ConfigProperty注入配置的Bean添加@RefreshScope注解,配置更新后调用Quarkus提供的刷新端点即可生效。

内容的提问来源于stack exchange,提问作者rightjoin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 18:39:02