Wildfly25迁移至EE9预览版WELD模块版本冲突报错咨询
问题解答
WELD版本选择与配置
你当前使用的wildfly-preview-25.0.0.Final对应Jakarta EE 9.1规范,该规范已将原javax.*命名空间全量迁移为jakarta.*:
- WELD 3.x系列适配Jakarta EE 8及更早版本,仍使用
javax.enterprise相关包路径,不符合EE 9.1的运行环境要求 - WELD 4.x系列适配Jakarta EE 9+规范,使用
jakarta.enterprise相关包路径,是你当前环境需要的版本,不要使用3.1.5版本,选择4.0.0.Final及以上的4.x稳定版本即可
你遇到的报错根源是加载的WELD 3.1.5尝试查找不存在的javax/enterprise/inject/spi/DeploymentException类,该类在EE 9.1环境下路径已变更为jakarta/enterprise/inject/spi/DeploymentException。
版本配置调整步骤
- 清理你自定义添加的
org/jboss/weld路径下所有3.x版本的文件,仅保留4.x版本的相关文件 - 检查你自定义的
org/hibernate、org/jboss模块下的module.xml配置,确保所有WELD相关依赖的版本指向4.x系列,不要硬编码3.x的版本号 - 检查你部署的应用包依赖配置,将WELD相关依赖的作用域调整为
provided,不要将WELD实现打包到应用内,统一使用WildFly容器提供的WELD模块
拼写问题反馈
WELD官网下载页存在拼写错误:WELD 4.0.2.Final被错误写为WELD 4.0.2.Finak,对应下载链接返回404,正确版本号拼写为4.0.2.Final。
内容的提问来源于stack exchange,提问作者NOTiFY
相关产品推荐
相关产品推荐

