我正在尝试将我的项目从 EAP 6.3 转换为 Wildfly Swarm ......
我在使用 CXF 时遇到了一些问题。
我有分数依赖:
<dependency>
<groupId>org.wildfly.swarm</groupId>
<artifactId>camel-cxf</artifactId>
</dependency>
稍后,我将其包含在内,否则我的"package org.apache.cxf.message does not exist"
骆驼处理器代码中会出现错误
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http</artifactId>
<version>3.1.9</version>
</dependency>
因此,如果我包含它,我会收到错误消息:
在 ws 端点部署中检测到 Apache CXF 库 (cxf-core-3.1.9.jar);要么提供一个适当的部署来替换具有容器模块依赖关系的嵌入式库,要么为当前部署禁用 webservices 子系统,为其添加适当的 jboss-deployment-structure.xml 描述符。推荐使用前一种方法,因为后一种方法会导致大多数 Web 服务 Java EE 和任何 JBossWS 特定功能被禁用。
好的,所以camel-cxf模块和我的jar之间可能存在lib冲突......或者它没有选择我的jboss-deployment-structure.xml文件?
我已经按照其他帖子的建议尝试了一些事情。
我尝试将其添加到 ${basedir}/src/main/webapp/WEB-INF 下的 jboss-deployment-structure.xml 中,并将 xml 文件添加到 maven-war-plugin 的 webResources 中。
<deployment>
<exclude-subsystems>
<subsystem name="webservices" />
</exclude-subsystems>
</deployment>
我也尝试将其添加到 jboss-deployment-structure.xml:
<dependencies>
<module name="org.apache.cxf" />
<module name="org.apache.cxf.impl" />
</dependencies>
但我不断收到这个错误。所以我不确定如何解决这个冲突。任何想法?