解决java.lang.NoClassDefFoundError: javax/xml/rpc/service错误的方法

本文解决了WebService部署后因缺少jaxrpc.jar及WebService关键包导致的NoClassDefFoundError错误。通过将缺失的jar包放置到lib目录并重启服务器解决了问题。

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

最近在做WebService项目,本地测试没有问题,打算部署到服务器上,但是部署后,访问时出现了如下图1的错误:

解决java.lang.NoClassDefFoundError: javax/xml/rpc/service错误的方法 - Tian@SpringSide - tzj359314269
图1
       图1报的是没有找到定义的类的错误。刷新页面有又出现了另外“新”的错误:
解决java.lang.NoClassDefFoundError: javax/xml/rpc/service错误的方法 - Tian@SpringSide - tzj359314269
图2
       根据图2显示,起先以为是配置出错了,导致找不到Client类,从而不能初始化该类。但是经过仔细排查后,发现端口,路径等配置并没有错误,所以非常疑惑。
      后来经过网上查找资料,发现了原因:缺少jaxrpc.jar包,这个包应该是在tomcat目录中的lib目录下。我在lib目录下查看后果然没有这个包,把这个包添加到lib,重启服务器后,正常显示,如图3:
解决java.lang.NoClassDefFoundError: javax/xml/rpc/service错误的方法 - Tian@SpringSide - tzj359314269
图3
      也就是说,其实图2是由图1引起的,这两个错误是同一个错误,都是由于少了jaxrpc.jar包引起的。其实这个包是依赖于axis.jar的包之一,其他类似包还有如图4所示:
解决java.lang.NoClassDefFoundError: javax/xml/rpc/service错误的方法 - Tian@SpringSide - tzj359314269
图4
另外需要引起重视的是:这里报的是NoClassDefFoundError错误,而不是报ClassNotFoundException,前者是在编译阶段发生的,后者是在运行时发生的,而不是编译阶段。
 
本错误还有另外一种解决办法:
由于这是WebService,也有可能缺少WebService的关键包,本项目中,我的lib目录下同样缺少如图5的包:
解决java.lang.NoClassDefFoundError: javax/xml/rpc/service错误的方法 - Tian@SpringSide - tzj359314269
图5
 将图5中的包添加到lib目录,重启服务器后同样能解决问题。
 
 注:jar包一定要放在WEB-INF下的lib下,否则web项目不生效。
 
 
 
 
 
以上缺少的包均可以从网上下载。

转载于:https://www.cnblogs.com/stsinghua/p/6418376.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值