猿问

部署适用于 Wildfly 14,但不适用于 15。非法争论异常不能同时要求和提供相同的依赖关系

试图让我的jee耳朵部署到野蝇15或16。

我收到此错误:

“WFLYCTL0080: Failed services” => {“jboss.deployment.subunit.\”test.ear\“.\”web.war\“.INSTALL“ => ”WFLYSRV0153: 未能处理阶段安装子部署 \“web.war\” 的部署 \“test.ear\” 由以下原因导致: java.lang.IllegalArgumentException: 不能同时要求和提供相同的依赖项:service jboss.nameing.context.java.module.test.web.env.mainDB“},mainDB 是以独立.xml方式配置的 postgresql 数据源。

关于我如何跟踪问题根源的任何指针都会有所帮助。

谢谢!

在 14.0.1 之前的 wildfly 版本上,部署完全相同的耳朵没有任何问题。在 14.0.1、10.0.1、9 和 8 上进行测试。


UYOU
浏览 85回答 1
1回答

慕少森

web.war/WEB-INF 中的 jboss-web.xml有以下内容:<jboss-web> &nbsp;&nbsp;<resource-ref> &nbsp;&nbsp;&nbsp;&nbsp;<res-ref-name>mainDB</res-ref-name> &nbsp;&nbsp;&nbsp;&nbsp;<jndi-name>mainDB</jndi-name> &nbsp;&nbsp;&nbsp;&nbsp;<res-type>javax.sql.DataSource</res-type> &nbsp;&nbsp;&nbsp;&nbsp;<res-auth>Container</res-auth> &nbsp;&nbsp;</resource-ref> </jboss-web>一旦我取下了这个,耳朵在野蝇15和16上都没有任何问题。显然,这是在不久前迁移代码时用来别名数据源的。web.xml中的 resource-ref 是用来做什么的?从那时起,代码已更新,并且不再使用别名,这导致别名与 jndi 名称相同,这不再是必需的,并导致部署失败。
随时随地看视频慕课网APP

相关分类

Java
我要回答