Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.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 弹簧罐';无法加载xml配置文件_Java_Xml_Spring_Spring Mvc - Fatal编程技术网

Java 弹簧罐';无法加载xml配置文件

Java 弹簧罐';无法加载xml配置文件,java,xml,spring,spring-mvc,Java,Xml,Spring,Spring Mvc,这个错误让我大吃一惊。所有的junit测试都很好,但是当我的应用程序作为另一个应用程序的插件加载时,我有一个错误。xml是jar文件的100%根目录,但由于某些原因,加载我的插件的主应用程序找不到该文件。为什么? 在应用程序的启动方法中,我调用 new ClassPathXmlApplicationContext(“beans.xml”)抛出 org.springframework.beans.factory.BeanDefinitionStoreException:IOException解析来

这个错误让我大吃一惊。所有的junit测试都很好,但是当我的应用程序作为另一个应用程序的插件加载时,我有一个错误。xml是jar文件的100%根目录,但由于某些原因,加载我的插件的主应用程序找不到该文件。为什么?

在应用程序的启动方法中,我调用
new ClassPathXmlApplicationContext(“beans.xml”)抛出

org.springframework.beans.factory.BeanDefinitionStoreException:IOException解析来自类路径资源[beans.XML]的XML文档;嵌套异常为java.io.FileNotFoundException:无法打开类路径资源[beans.xml],因为它不存在

新文件系统XMLApplicationContext(getClass().getClassLoader().getResource(“beans.xml”).getPath())抛出

org.springframework.beans.factory.BeanDefinitionStoreException:IOException从URL解析XML文档[file:/C:/path/to/my.jar!/beans.XML];嵌套异常是java.io.FileNotFoundException:C:\path\to\my.jar\beans.xml(系统找不到指定的路径)



UPD:问题是应用程序使用自定义类加载器,它不加载根目录、META-INF等中的资源文件。但只有类您得到的FileNotFoundException确实指出beans.xml文件不在您认为它所在的jar中。我想看看那个罐子里面。例如,您可以打开jar。我发现,当您遇到类似于您报告的错误时,这提供了有用的洞察力。

如果您得到的是
FileNotFoundException
,这是因为该文件不在您要查找它的位置。
beans.xml
文件必须位于
src/main/resources

您所说的“jar文件的根”是什么意思,您能检查它位于什么路径吗?@Jama我的意思是beans.xml必须位于jar文件中。