java.lang.NoClassDefFoundError: org/apache/commons/collections/Transformer
java.lang.NoClassDefFoundError: org/apache/commons/collections/Transformer
我在尝试使用来自 Apache Commons BeanUtils 库的 BeanMap
时收到以下错误 java.lang.NoClassDefFoundError: org/apache/commons/collections/Transformer
。
它由以下代码生成:BeanMap studentBeanMap = new BeanMap(cohortStudentData.get(row));
其中 cohortStudentData
是 beans 列表。
我正在使用 Apache DBUtils 中的 BeanListHandler
从数据库中形成 bean 列表。
我从 this and this 错误报告中了解到 BeanMap
依赖于 Apache Collections 框架。但是,我已将所有相关库导入到我的项目和我的 class 中,如下所示:
有谁知道为什么会这样?
我不是很确定,但我认为你的错误是因为 jar 版本。最近 apache 更改了新版本 jar 的包,因为它们实现了新功能或不完全向后兼容的东西。例如 jar commons-beanutils-1.9.2.jar 依赖于 commons-collections-3.2.1.jar (根据 this 站点)并且您正在使用 commons-collections-4.4.0.jar。如果您计划使用 apache jar 的世界,您需要确保它们都是兼容的。
只需将此依赖项添加到您的项目中即可。
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.2</version>
</dependency>
commons-collections4-x.x.jar 将库添加到类路径并再次尝试 运行。它会起作用。
从以下位置下载库:
https://mvnrepository.com/artifact/org.apache.commons/commons-collections4/4.1
添加版本 3.2.1 的依赖似乎在这里有效
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.1</version>
</dependency>
添加 commons-collections-3.2.jar 到项目库
我在尝试使用来自 Apache Commons BeanUtils 库的 BeanMap
时收到以下错误 java.lang.NoClassDefFoundError: org/apache/commons/collections/Transformer
。
它由以下代码生成:BeanMap studentBeanMap = new BeanMap(cohortStudentData.get(row));
其中 cohortStudentData
是 beans 列表。
我正在使用 Apache DBUtils 中的 BeanListHandler
从数据库中形成 bean 列表。
我从 this and this 错误报告中了解到 BeanMap
依赖于 Apache Collections 框架。但是,我已将所有相关库导入到我的项目和我的 class 中,如下所示:
有谁知道为什么会这样?
我不是很确定,但我认为你的错误是因为 jar 版本。最近 apache 更改了新版本 jar 的包,因为它们实现了新功能或不完全向后兼容的东西。例如 jar commons-beanutils-1.9.2.jar 依赖于 commons-collections-3.2.1.jar (根据 this 站点)并且您正在使用 commons-collections-4.4.0.jar。如果您计划使用 apache jar 的世界,您需要确保它们都是兼容的。
只需将此依赖项添加到您的项目中即可。
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.2</version>
</dependency>
commons-collections4-x.x.jar 将库添加到类路径并再次尝试 运行。它会起作用。
从以下位置下载库: https://mvnrepository.com/artifact/org.apache.commons/commons-collections4/4.1
添加版本 3.2.1 的依赖似乎在这里有效
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.1</version>
</dependency>
添加 commons-collections-3.2.jar 到项目库