spark history web访问报错java.lang.NoSuchMethodError: javax.ws.rs.core.Application.getProperties()

在尝试访问Spark History Web时遇到错误:java.lang.NoSuchMethodError: javax.ws.rs.core.Application.getProperties()Ljava/util/Map;。问题源于jersey-core版本冲突。通过更新jersey-core-1.9.jar并替换Spark中的旧版本,解决了这个问题。详细步骤包括:反编译源码,创建新包结构,打包并替换jar,最终成功访问Spark任务历史。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

版本:spark2.4.8

模式:spark on yarn

具体错误:访问history-web的时候,一片空白,看不到任何任务,仔细看了conf下的配置没问题,

配置在hdfs,目录下也的却有application之类的目录。然后浏览器F12发现接口方法报错,信息为java.lang.NoSuchMethodError: javax.ws.rs.core.Application.getProperties()Ljava/util/Map;

搜索了这个方法来源于jersey-core。由于是spark on yarn,yarn的jersy-core版本是1.9,我把这个包移到了spark的jar目录,发现还是这样,于是反编译此包发现还没有此类。于是下载了git上jersy1.10的源码,jersy-core模块的pom下添加

<dependency>
    <groupId>javax.ws.rs</groupId>
    <artifactId>javax.ws.rs-api</artifactId>
    <version>2.0.1</version>
</dependency>

注释掉

<dependency>
    <groupId>javax.ws.rs</groupId>
    <artifactId>jsr311-api</artifactId>
    <version>1.1.1</version>
    <scope>provided</scope>
</dependency>

随便找一个类import javax.ws.rs.core.Application,点进去看有ge

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值