0

我是春天的新手,我正在尝试使用 Spring Container 构造对象,该对象将解析我的 XML 文件,所以我有一个.xml和两个.java类。

春季版 5.1.0

我正在寻找类似的解决方案,但有些是不适合春季的 Maven 解决方案。

  1. 员工BeanFile.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" 
        xmlns:context="http://www.springframework.org/schema/context"
        xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/context
       http://www.springframework.org/schema/context/spring-context.xsd">
    
    <bean id="emp" class="co.bin.rito.Employee">
        <property name="eid" value="143529" />
        <property name="ename" value="Rito Sarkar" />
        <property name="eaddress" value="Tower Two Magarpatta, S5-458" />
    </bean>
    

  2. 雇员.java

    public class Employee {
        // this contains attributes 
        // constructor and methods
        // and set, get and toString() function 
    }
    
  3. 客户端.java

    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.AbstractApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    
    public class Client {
    
        public static void main(String[] args) {
            // Spring way | IOC (Inversion of control)
            ApplicationContext context = new ClassPathXmlApplicationContext("employeeBeanFile.xml");
            Employee e = (Employee) context.getBean("emp");
            System.out.println("Employee one details: " + e);
            ((AbstractApplicationContext) context).close();
        }}
    

使用此代码,我得到以下错误

Exception in thread "main" java.lang.NoSuchMethodError: org.springframework.util.ReflectionUtils.clearCache()V
    at org.springframework.context.support.AbstractApplicationContext.resetCommonCaches(AbstractApplicationContext.java:910)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:573)
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:144)
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:85)
    at co.bin.rito.Client.main(Client.java:11)
4

1 回答 1

1

由于 Spring 中不同版本的 jars 会发生此错误。请在您的 pom 中使用正确的 jars 依赖项。还要确保在构建路径中没有包含其他版本的 jar。

于 2019-07-20T12:27:28.177 回答