出现java.lang.NoClassDefFoundError: org/apache/commons/collections/FastHashMap错误问题解决

在使用Apache Commons BeanUtils的BeanUtils.populate方法时遇到-500 java.lang.NoClassDefFoundError: org/apache/commons/collections/FastHashMap错误。问题源于commons-collection高版本中移除了FastHashMap。解决方案是替换为commons-collection-3.2版本,并确保BeanUtil、Collection和logging的版本分别为1.9.3+、3.2.2+和1.2。完成替换后需重启Tomcat并把相关jar包放入Tomcat的lib和WEB-INF/lib目录。

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

首先出现这个问题,你应该是用了

BeanUtils.populate(meter,map);
import org.apache.commons.beanutils.BeanUtils;

并且导入了commons-beanutils-1.9.2.jarcommons-logging-1.2.jar这俩包

如果是那么我可能就能解决你的问题。


  在编写Servlet中实现表单值自动填充的程序中,出现了-500 java.lang.NoClassDefFoundError:org/apache/commons/collections/FastHashMap报错,究其原因就是在commons-collection-4.X以上的包中不存在FastHashMap方法.

  解决方案也很简单,替换成commons-collection-3.2版本的包就可以,同时应当重启Tomcat。将jar包放入Tomcat的lib文件夹 和 WEB-INF的lib文件夹下。


目前测试可以使用的BeanUtils依赖包版本是:

BeanUtil-1.9.3 +

Collection-3.2.2 +

logging-1.2


commons-collection-3.2下载链接链接.
http://commons.apache.org/proper/commons-collections/download_collections.cgi

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值