java - 使用 commons-beanutils 在 org.apache.commons.logging.LogFactory 上抛出 ClassNotFoundException

标签 java

我有相同的代码

import org.apache.commons.beanutils.PropertyUtils;
public class Reflection {

    private double []masElement = {3,5,2,5};

    public double getValue(int i){
    if (masElement.length>i){
    return masElement[i];
    }
    return 0;
    }
    public void setValue(int i, int value){
    if (masElement.length>i){
        masElement[i]=value;
    }
}
    public static void main(String[] args) {
    Reflection n = new Reflection();
    try {
        System.out.println(PropertyUtils.getProperty(n, "masElement[0]"));
    } catch (IllegalAccessException e) {
        e.printStackTrace();
    } catch (InvocationTargetException e) {
        e.printStackTrace();
    } catch (NoSuchMethodException e) {
        e.printStackTrace();
    }

我遇到问题,但不明白为什么?

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
at org.apache.commons.beanutils.ConvertUtilsBean.<init>(ConvertUtilsBean.java:157)
at org.apache.commons.beanutils.BeanUtilsBean.<init>(BeanUtilsBean.java:117)
at org.apache.commons.beanutils.BeanUtilsBean$1.initialValue(BeanUtilsBean.java:68)
at org.apache.commons.beanutils.ContextClassLoaderLocal.get(ContextClassLoaderLocal.java:153)
at org.apache.commons.beanutils.BeanUtilsBean.getInstance(BeanUtilsBean.java:80)
at org.apache.commons.beanutils.PropertyUtilsBean.getInstance(PropertyUtilsBean.java:114)
at org.apache.commons.beanutils.PropertyUtils.getProperty(PropertyUtils.java:426)
at same.home.reflection.Reflection.main(Reflection.java:39)
   Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
... 8 more

最佳答案

Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory

您需要输入 Apache Commons Logging JAR 文件也在类路径中。 Apache Commons Beanutils 将其用作其 dependencies 之一.

关于java - 使用 commons-beanutils 在 org.apache.commons.logging.LogFactory 上抛出 ClassNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4483880/

相关文章:

java - 空对象模式是否违反了接口(interface)隔离原则?

java - "Method undefined for type"错误,适用于上行 - 发生了什么事?

java - 如何将日期转换为 DateTime 或 LocalDate Joda

java - 最小二乘法 3D

java - JDBCSQL异常: Column not found [@Column annotation is not working field in JPA]

java 根据第一个单词查找文件中的特定行

java - 外部类java中的While循环

java - 从类类型到实例方法的方法引用与从实例到实例方法的方法引用

java - 如何保持内存中的java列表与数据库中的表同步?

java - 不清楚 ArrayList 的文档