You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Jersey 2.22.1开发Rest服务遇类初始化异常求助

解决Jersey 2.22.1中Could not initialize class org.glassfish.jersey.message.internal.ReaderWriter异常

嘿,我来帮你搞定这个头疼的异常!这个问题大概率是依赖不完整或者版本冲突搞的鬼,结合你给出的配置,咱们一步步来排查:

1. 先补全Jersey核心依赖

你只贴了javax.ws.rs-api的配置,但Jersey 2.x要跑起来,得有完整的核心包才行。赶紧把这些依赖加到你的pom.xml里,注意版本要统一用2.22.1:

<!-- Jersey核心服务器组件 -->
<dependency>
    <groupId>org.glassfish.jersey.core</groupId>
    <artifactId>jersey-server</artifactId>
    <version>2.22.1</version>
</dependency>
<dependency>
    <groupId>org.glassfish.jersey.containers</groupId>
    <artifactId>jersey-container-servlet-core</artifactId>
    <version>2.22.1</version>
</dependency>
<!-- 如果你的接口要处理JSON数据,别忘了加这个JSON依赖 -->
<dependency>
    <groupId>org.glassfish.jersey.media</groupId>
    <artifactId>jersey-media-json-jackson</artifactId>
    <version>2.22.1</version>
</dependency>

2. 排查依赖冲突

你把javax.ws.rs-api设成了<scope>provided</scope>,意思是让服务器容器提供这个API包,但如果容器自带的版本和Jersey 2.22.1不兼容(比如容器用的是老版JAX-RS 1.x),就会触发这个异常:

  • 如果是Tomcat这类默认不提供JAX-RS API的容器,建议把provided改成compile,让项目自己管理这个依赖。
  • 用mvn dependency:tree命令生成依赖树,看看有没有其他依赖偷偷引入了不同版本的JAX-RS或者Jersey包。要是发现有旧版Jersey 1.x的依赖,直接排除掉就行,比如:
<dependency>
    <groupId>你的其他依赖groupId</groupId>
    <artifactId>你的其他依赖artifactId</artifactId>
    <version>对应版本</version>
    <exclusions>
        <exclusion>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-core</artifactId>
        </exclusion>
    </exclusions>
</dependency>

3. 检查类加载和部署问题

如果是Web应用,确认你的Jersey依赖包都在WEB-INF/lib目录里,别让服务器自带的类加载器优先加载了不兼容的类。有些服务器自带了JAX-RS相关库,要是冲突的话,得在服务器配置里禁用这些自带库,强制用项目里的依赖。

4. 验证Jersey配置类

最后检查下你的Jersey配置类是不是写对了,比如继承ResourceConfig的类要正确扫描你的接口包:

import org.glassfish.jersey.server.ResourceConfig;

public class JerseyConfig extends ResourceConfig {
    public JerseyConfig() {
        // 替换成你的Rest接口所在的包路径
        packages("com.yourcompany.rest");
        // 有自定义特性的话也在这里注册
    }
}

按照上面的步骤走一遍,应该就能解决这个类初始化的问题啦~

内容的提问来源于stack exchange,提问作者Jyothsna

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:03:15