HelloWorld Spring 应用程序在线程 "main" 中抛出异常:java.lang.NoClassDefFound



我正在尝试开发一个Spring "HelloWorld"项目,而我正在运行该应用程序,它给了我这个错误:

INFO:从类路径资源[Beans.xml]加载XML bean定义在线程"main"中出现异常java.lang.NoClassDefFoundError: org.springframework.expression.ExpressionParser

下面是我的代码:
package com.tutorialspoint;
public class HelloWorld {
    private String message;
    public void getMessage() {
        System.out.println("your message : "+message);
    }
    public void setMessage(String message) {
        this.message = message;
    }
}

package com.tutorialspoint;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class MainApp {
    public static void main(String[] args) {
    ApplicationContext context = new ClassPathXmlApplicationContext("Beans.xml");
        HelloWorld obj = (HelloWorld) context.getBean("helloWorld ");
    obj.getMessage();
    // TODO Auto-generated method stub
    }
}

中:

<?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-3.0.xsd">
    <bean id="helloWorld" class="com.tutorialspoint/HelloWorld">
        <property name="message" value="Hello World!"/>
    </bean>
</beans>

除了添加所有依赖jar之外,bean定义中定义的class似乎无效

com.tutorialspoint/HelloWorld
                  ^

,

<bean id="helloWorld" class="com.tutorialspoint.HelloWorld"> 
     <property name="message" value="Hello World!"/>
</bean>

也应将context.getBean("helloWorld ")改为context.getBean("helloWorld")

include

spring-expression-3.1.1.Release.jar

lib文件夹下

我以3.1.1为例,你可以使用最新版本,如果有的话

将spring依赖项添加到class-path

如果您不使用Maven,如M Sach所说,将"spring expression-X.Release.jar"添加到您的"lib"文件夹中,并且不要忘记将其添加到Eclipse

中的构建路径中。

此异常与spring-expression.jar相关。

pom.xml中添加以下依赖项

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-expression</artifactId>
    <version>5.3.8</version>
</dependency>

相关内容

最新更新