Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.lang.ExceptionInInitializeError在Spring中创建应用程序上下文时发生异常_Java_Spring_Exception_Applicationcontext - Fatal编程技术网

java.lang.ExceptionInInitializeError在Spring中创建应用程序上下文时发生异常

java.lang.ExceptionInInitializeError在Spring中创建应用程序上下文时发生异常,java,spring,exception,applicationcontext,Java,Spring,Exception,Applicationcontext,我正在使用Spring进行练习,当我尝试实例化上下文时,得到一个java.lang.ExceptionInInitializerError异常。异常出现在下面,后面是我的代码。我以前简化了我的实验 例外 Oct 17, 2012 5:54:22 PM org.springframework.context.support.AbstractApplicationContext prepareRefresh INFO: Refreshing org.springframework.context.s

我正在使用Spring进行练习,当我尝试实例化上下文时,得到一个java.lang.ExceptionInInitializerError异常。异常出现在下面,后面是我的代码。我以前简化了我的实验

例外

Oct 17, 2012 5:54:22 PM org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@570c16b7: startup date [Wed Oct 17 17:54:22 CDT 2012]; root of context hierarchy
Exception in thread "main" java.lang.ExceptionInInitializerError
at org.springframework.context.support.AbstractRefreshableApplicationContext.createBeanFactory(AbstractRefreshableApplicationContext.java:195)
at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:128)
at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:535)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:449)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
at helloworld.HelloWorldTest.main(HelloWorldTest.java:13)
Caused by: java.lang.NullPointerException
at org.springframework.beans.factory.support.DefaultListableBeanFactory.<clinit>(DefaultListableBeanFactory.java:105)
... 7 more

第17行与
上下文.getBean(“userRepository”
行不对应,它对应于初始化Spring上下文之前的那一行。实际上,您还可以通过stacktrace看到,它说它在
ClassPathXmlApplicationContext
的第83行失败,其中存在该类的构造函数

无论如何,当Spring出于任何原因(构造函数中的异常等)无法创建任何bean时,通常会引发此异常。我建议降低Spring类和您自己的库的日志级别,以查看下面发生了什么

org.springframework=TRACE
com.gamemanagertest=TRACE
com.gamemanagertest=TRACE

还要检查资源文件,如果它们产生任何错误,应用程序和所有对象的构造函数是否可以访问它们。

我也面临同样的问题。我从项目中删除了所有spring jar。 然后再次将它们粘贴到项目文件夹中,并将它们添加到构建路径中。 它成功了。
不太清楚它是如何发生的。

你确定你对类路径上的所有Spring JAR都使用相同的版本吗?编辑你的帖子并包括整个堆栈跟踪。@mattb我使用的是Spring Spurce.org网站上发布的最新Spring JAR。@JimGarrison如何从Ec中获取剩余的堆栈跟踪lipse/STS。这是控制台中显示的内容。@cyotee你在使用Maven吗?如果是,你能发布你的POM吗?我假设你安装了一个日志框架,用答案中给出的级别配置它,看看有什么中断。
package helloworld;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class HelloWorldTest {

/**
 * @param args
 */
public static void main(String[] args)
{
    ApplicationContext context = new ClassPathXmlApplicationContext("HelloWorldTest-context.xml");

    MessageContainer message = context.getBean(MessageContainer.class);

    MessageOutputService service = context.getBean(MessageOutputService.class);

    service.outputMessageToConsole(message);

}

}
org.springframework=TRACE
com.gamemanagertest=TRACE
com.gamemanagertest=TRACE