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

如何用YAML配置在WildFly部署含子部署(JAR/WAR)的EAR文件?

问题背景

WildFly已支持YAML配置扩展,我已通过以下YAML配置成功部署JAR文件:

wildfly-configuration:
    deployment:
        test.jar:
            content:
                -
                    path: test.jar
                    relative-to: jboss.server.base.dir
                    archive: true

现需部署包含JAR和WAR子部署的test.ear文件,期望部署EAR时自动部署其内部所有子部署,无需手动更新EAR内的application.xml定义模块。目前WildFly仅部署application.xml中列出的子部署,请问能否通过YAML配置实现自动部署所有子部署的需求?若可以,请提供示例或配置指引。


解决方案

可以通过YAML配置实现该需求,核心是利用WildFly的自动子部署检测特性,在EAR的部署配置中开启强制自动扫描子部署的选项。

配置示例

wildfly-configuration:
    deployment:
        test.ear:
            content:
                -
                    path: test.ear
                    relative-to: jboss.server.base.dir
                    archive: true
            # 开启自动部署所有子部署,忽略application.xml的列表限制
            auto-deploy-subdeployments: true

配置要点说明

  • auto-deploy-subdeployments: true:该配置会让WildFly自动扫描EAR包内的所有JAR、WAR子模块,无论它们是否在application.xml中被定义,都会自动完成部署。
  • 如果你的EAR包本身没有application.xml,WildFly默认会开启自动子部署;若已有application.xml,则需要显式添加此配置来突破原有列表限制。
  • 若使用解压后的EAR目录部署,可额外添加deploy-exploded: true选项,但对于打包的EAR包,auto-deploy-subdeployments是实现需求的关键配置。

补充说明

确保使用的WildFly版本为26或更高(YAML配置扩展在2022年4月推出),同时保证EAR包内的子模块结构完整、无损坏,避免因包本身问题导致部署失败。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 18:05:09