java - BeanComparator 生成 NoClassDefFoundError

标签 java comparator

只是尝试使用 BeanComparator,但我遇到了一些无法解决的错误:

BeanComparator comparator = new BeanComparator("age");
        Collections.sort(myList, comparator);


        comparator = new BeanComparator("name");
        Collections.sort(myList, comparator);

    comparator = new BeanComparator("sickness");
    Collections.sort(myList, comparator);

运行此代码会生成以下错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/collections/comparators/ComparableComparator
    at org.apache.commons.beanutils.BeanComparator.<init>(BeanComparator.java:81)
    at testBeanComparator.TestBeanComparator.main(TestBeanComparator.java:23)

这是一个基本的 java 应用程序,我设置它是为了隔离 BeanComparator 问题。 我将 jar 包含在 Maven 中:

<dependency>
    <groupId>commons-beanutils</groupId>
    <artifactId>commons-beanutils-bean-collections</artifactId>
    <version>1.8.3</version>
</dependency>

知道是什么导致了这种困惑吗?

提前致谢。

最佳答案

确保您拥有 commons-beanutils.jar 以及 commons-logging.jarcommons-collections.jar。我尝试了以下 commons-beanutils-1.9.2 、 commons-logging-1.2、commons-collections-3.2.1

关于java - BeanComparator 生成 NoClassDefFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33594474/

相关文章:

java - 具有重要名称的 WSDL 中的参数名称

java - gson TypeToken 类NotFoundException

c++ - 对没有比较器或 lambda 函数的 vector 进行排序?

java - 将随机数转换为一组数组

java - 通过暴力破解硬币组合

Java VM 对象引用

Java:使用方法和比较器将一个数组排序到另一个数组

java - 无法将数组和比较器作为泛型类型传递

Java Comparator 不比较每个对象

java 用比较器将整数与字符串进行比较 - 奇怪的结果