部署在 Wildfly 14 中有效,但在 15 中无效。IllegalArgumentException 不能同时要求和提供相同的依赖项
Deployment works in Wildfly 14 but not 15. IllegalArgumentException Cannot both require and provide same dependency
正在尝试将我的 jee ear 部署到 wildfly 15 或 16。
我收到这个错误:
"WFLYCTL0080: Failed services" => {"jboss.deployment.subunit.\"test.ear\".\"web.war\".INSTALL" => "WFLYSRV0153: 无法处理子部署的 INSTALL 阶段 \"web.war\" 的部署
\"test.ear\"
由以下原因引起:java.lang.IllegalArgumentException:不能同时要求和提供相同的 dependency:service jboss.naming.context.java.module.test.web.env.mainDB"},
mainDB 是在 standalone.xml 中配置的 postgresql 数据源。
关于我如何跟踪问题根源的任何指示都会有所帮助。
谢谢!
在 14.0.1 之前的 wildfly 版本上部署完全相同的耳朵没有任何问题。在 14.0.1、10.0.1、9 和 8 上测试。
web.war/WEB-INF中的jboss-web.xml是这样的:
<jboss-web>
<resource-ref>
<res-ref-name>mainDB</res-ref-name>
<jndi-name>mainDB</jndi-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</jboss-web>
一旦我删除它,耳朵在 wildfly 15 和 16 上都没有任何问题地展开。
显然,这在前一段时间迁移代码时被用作数据源的别名。
What is resource-ref in web.xml used for?
之后更新了代码,不再使用别名,导致别名与jndi-name相同,不再需要,导致部署失败。
正在尝试将我的 jee ear 部署到 wildfly 15 或 16。
我收到这个错误:
"WFLYCTL0080: Failed services" => {"jboss.deployment.subunit.\"test.ear\".\"web.war\".INSTALL" => "WFLYSRV0153: 无法处理子部署的 INSTALL 阶段 \"web.war\" 的部署 \"test.ear\" 由以下原因引起:java.lang.IllegalArgumentException:不能同时要求和提供相同的 dependency:service jboss.naming.context.java.module.test.web.env.mainDB"}, mainDB 是在 standalone.xml 中配置的 postgresql 数据源。
关于我如何跟踪问题根源的任何指示都会有所帮助。
谢谢!
在 14.0.1 之前的 wildfly 版本上部署完全相同的耳朵没有任何问题。在 14.0.1、10.0.1、9 和 8 上测试。
web.war/WEB-INF中的jboss-web.xml是这样的:
<jboss-web>
<resource-ref>
<res-ref-name>mainDB</res-ref-name>
<jndi-name>mainDB</jndi-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</jboss-web>
一旦我删除它,耳朵在 wildfly 15 和 16 上都没有任何问题地展开。
显然,这在前一段时间迁移代码时被用作数据源的别名。
What is resource-ref in web.xml used for?
之后更新了代码,不再使用别名,导致别名与jndi-name相同,不再需要,导致部署失败。