NoClassDefFoundError:org / springframework / context / support / ClassPathXmlApplicationContext

时间:2013-01-11 13:02:00

标签: java spring

我正在使用spring-framework-3.2.0.RELEASE制作一个简单的应用程序。但我得到NoClassDefFoundError

这是我的代码

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import java.io.FileOutputStream;
import java.io.PrintWriter;
import java.io.FileNotFoundException;

public class SpringDemo{
    public static void main(String args[]) throws FileNotFoundException{
            ApplicationContext context = new ClassPathXmlApplicationContext("message.xml");
    }
}

class MessageClass{
    private String message = null;

    MessageClass(String message){
        this.message = message;
    }

    public String getMessage(){
        return message;
    }

    public void setMessage(String message){
        this.message = message;
    }
}

以下是我的message.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://www.springframework.org/schema/beans 
                       http://www.springframework.org/schema/beans/spring-beans.xsd">

<bean id="message"
      class="MessageClass">
    <property name="message" value="Spring is fun." />
</bean>

我收到以下错误

Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/c
ontext/support/ClassPathXmlApplicationContext
        at SpringDemo.main(SpringDemo.java:10)
Caused by: java.lang.ClassNotFoundException: org.springframework.context.support
.ClassPathXmlApplicationContext
        at java.net.URLClassLoader$1.run(Unknown Source)
        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)
        ... 1 more

我在jdk_version/jre/lib/ext目录

中包含了以下jar

1)antlr 2)commons-logging-1.1.1 3)春豆 4)春天语境 5)弹簧芯 6)spring-jdbc 7)spring-orm 8)spring-tx

有什么问题?我没有从其他相关问题得到任何帮助。请帮帮我。

提前致谢。

1 个答案:

答案 0 :(得分:2)

  

我在jdk_version/jre/lib/ext目录

中包含了以下jar

这可能是一个错误,因为只有需要作为扩展名的JAR应该进入这个目录(例如,你不是100%确定特定的JAR需要是一个扩展,那么它可能不会)。尝试从lib/ext中删除JAR,然后以正常方式将它们放在应用程序的类路径中。