java.lang.ExceptionInInitializerError在Spring中创建应用程序上下文时的异常

我正在练习Spring,当我尝试实例化上下文时,我得到了一个java.lang.ExceptionInInitializerError异常.下面显示了Exception,我的代码跟随它.我从以前简化了我的实验.

例外

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.sspathXmlApplicationContext.java:139)
at org.springframework.context.support.ClasspathXmlApplicationContext.sspathXmlApplicationContext.java:83)
at helloworld.HelloWorldTest.main(HelloWorldTest.java:13)
Caused by: java.lang.NullPointerException
at org.springframework.beans.factory.support.DefaultListablebeanfactory.beanfactory.java:105)
... 7 more

我的配置XML

spring-beans-3.1.xsd">

我的考试班.

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);

}

}
最佳答案
第17行与context.getBean(“userRepository”行)不对应,它对应于初始化Spring上下文之前的行.实际上你也可以通过stacktrace看到它在ClasspathXmlApplicationContext的第83行上失败了存在该类的构造函数.

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

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

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

相关文章

这篇文章主要介绍了spring的事务传播属性REQUIRED_NESTED的原...
今天小编给大家分享的是一文解析spring中事务的传播机制,相...
这篇文章主要介绍了SpringCloudAlibaba和SpringCloud有什么区...
本篇文章和大家了解一下SpringCloud整合XXL-Job的几个步骤。...
本篇文章和大家了解一下Spring延迟初始化会遇到什么问题。有...
这篇文章主要介绍了怎么使用Spring提供的不同缓存注解实现缓...