BeanFactory not initialized or already closed - call 'refresh' before access

时间:2023-03-08 22:31:00

错误:
java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext

错误原因:

BeanFactory没有实例化或者已经关闭。

原因很简单:ApplicationContext ctx = new ClassPathXmlApplicationContext();

Spring实例化BeanFactory的时候是默认到classPath下面查找名为applicationContext.xml的文件。

这正是这个错误的原因,修改为:ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");

如果这样的话就不会出现这样的错误了。applicationContext.xml,可以是自己命名的xml。

如果之前使用正常,后面抽风出现这种问题,Clear Project一般就可以了