20

当我尝试完全根据此处显示的示例上传文件时,我收到了错误 示例

错误是

为 servlet com.testapp.rest.JaxRsActivator 分配异常:java.lang.RuntimeException:找不到类 org.jboss.resteasy.core.AsynchronousDispatcher 的公共构造函数

这意味着什么?

4

5 回答 5

72

如果部署到 JBoss 7.x,您需要将 resteasy 依赖项的范围更改为provided. 这是因为这些特定的库已经作为模块包含在 JBoss 中:

<dependency>
    <groupId>org.jboss.resteasy</groupId>
    <artifactId>resteasy-jaxrs</artifactId>
    <version>2.2.1.GA</version>
    <scope>provided</scope>
</dependency>

<dependency>
    <groupId>org.jboss.resteasy</groupId>
    <artifactId>resteasy-multipart-provider</artifactId>
    <version>2.2.0.GA</version>
    <scope>provided</scope>
</dependency>
于 2013-03-24T20:52:40.087 回答
4

当我遇到此错误并尝试上述解决方案但对我不起作用时,我正在使用wildfly 10resteasy-jaxrs部署我的应用程序,最后我不得不使用 maven 排除项排除 jar

    <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-servlet-initializer</artifactId>
        <version>3.0.19.Final</version>
        <scope>provided</scope>
        <exclusions>
            <exclusion>
                <artifactId>resteasy-jaxrs</artifactId>
                <groupId>org.jboss.resteasy</groupId>
            </exclusion>
        </exclusions>
    </dependency>
于 2016-12-15T06:21:11.833 回答
2

像一个魅力

还有一件事,确保你检查resteasy

$ mvn dependency:tree | grep "resteasy"

[INFO] \- org.jboss.resteasy:resteasy-jaxrs:jar:3.0.10.Final:provided
[INFO]    +- org.jboss.resteasy:jaxrs-api:jar:3.0.10.Final:provided
于 2014-03-14T06:49:44.247 回答
2

也许值得一提的是,RESTeasy 文档中有关于如何升级 JBoss 中包含的 RESTeasy 的信息,如上所述,如果您尝试使用其他版本,可能会引起一些头痛。

于 2015-10-21T06:08:39.517 回答
0

简单地说,您可以将此依赖项添加到您的 pom.xml 文件中并对其进行测试。

<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
<version>2.2.1.GA</version>
<scope>provided</scope>
</dependency>
于 2020-11-02T06:00:54.990 回答