CollectionUtils的jar包冲突问题,小心工具类的使用
问题描述:
项目里引入了commons-beanutils-core包里的CollectionUtils的isEmpty方法做集合的判断,做测试的时候出现了NoSuchMethodError错误,后来运行System.out.println(CollectionUtils.class.getProtectionDomain().getCodeSource().getLocation()) 发现url指向硬盘里commons-collections的jar包位置,而 commons-collections里有CollectionUtils类但是没有isEmpty方法,所以会报错。
解决:
查找引用commons-collections的项目,在pom.xml中使用exclusions排除。
思考:
不要为了省事而使用随意使用工具类,在对字符串、集合的判断上宁可麻烦一些自己写。