Java 将resteasy spring模块加载到WildFly ClassNotFoundException中

Java 将resteasy spring模块加载到WildFly ClassNotFoundException中,java,resteasy,wildfly,Java,Resteasy,Wildfly,在设置了一个我在WildFly上部署的小型JAX-RS应用程序之后,我正在尝试向RestEasy添加Spring支持。我想使用WildFly中包含的resteasy spring模块。部署WAR时,我得到一个ClassNotFoundException: Caused by: java.lang.ClassNotFoundException: org.jboss.resteasy.plugins.spring.SpringContextLoaderListener from [Module "

在设置了一个我在WildFly上部署的小型JAX-RS应用程序之后,我正在尝试向RestEasy添加Spring支持。我想使用WildFly中包含的resteasy spring模块。部署WAR时,我得到一个ClassNotFoundException:

 Caused by: java.lang.ClassNotFoundException: org.jboss.resteasy.plugins.spring.SpringContextLoaderListener from [Module "deployment.mk-backend-8.0.0-SNAPSHOT.war:main" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:197) [jboss-modules.jar:1.3.0.Final]
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:443) [jboss-modules.jar:1.3.0.Final]
at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:431) [jboss-modules.jar:1.3.0.Final]
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:373) [jboss-modules.jar:1.3.0.Final]
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:118) [jboss-modules.jar:1.3.0.Final]
at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService.addListener(UndertowDeploymentInfoService.java:1145)
at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService.createServletConfig(UndertowDeploymentInfoService.java:734)
... 6 more
我将模块包含在清单文件中,如下所示:

Manifest-Version: 1.0
Dependencies: org.jboss.resteasy.resteasy-spring export
在我的web.xml中,我包含了SpringContextLoaderListener

<listener>
    <listener-class>
        org.jboss.resteasy.plugins.spring.SpringContextLoaderListener
    </listener-class>
</listener>

org.jboss.resteasy.plugins.spring.SpringContextLoaderListener
我对WildFly完全陌生。我查阅了很多文件,但找不到任何对我有帮助的。。
我做错了什么?

我正在处理一个非常类似的问题。。。如果在WEB-INF/lib中不包含依赖项,则可以强制Wildfly从服务器类路径加载此依赖项,或者甚至在它与项目中使用的特定lib版本冲突时将其排除。 您只需创建以下XML文件并将其保存在
WEB-INF/jboss部署结构.XML

<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
    <deployment>
    <exclusions>
        <module name="org.jboss.resteasy.resteasy-jackson2-provider" />
    </exclusions>
    <dependencies>
        <module name="org.jboss.resteasy.resteasy-jackson-provider" services="import" />
        <module name="org.apache.httpcomponents" services="import"/>
        <module name="org.apache.commons.io" services="import"/>
    </dependencies>
</deployment>
</jboss-deployment-structure>
如果WildFly依赖项是私有的,那么应该将其显式地包含在上面显示的XML(jboss deployment structure.XML)中。否则,您只需使用它,就不需要在WEB-INF/lib或manifest.mf文件中包含该库。但是,如果依赖项在WildFly上不可用,我建议您将其包含在WEB-INF/lib中

有关更多信息,请查看

<properties>
    <property name="jboss.api" value="private"/>
</properties>