Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.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 Springs:为什么在包中移动XML文件会给我一个错误_Java_Spring - Fatal编程技术网

Java Springs:为什么在包中移动XML文件会给我一个错误

Java Springs:为什么在包中移动XML文件会给我一个错误,java,spring,Java,Spring,我不熟悉Java Springs 我创建了一个名为com.MyFirstSpringPackage的包,其中有几个Java文件,还有一个XML文件(在包外部),它们调用了类构造函数(连接bean),一切都很顺利 现在,我决定使用eclipse将此XML文件拖放到包中,然后程序开始抛出错误: 以下是stacktrace: Jun 17, 2014 11:03:12 AM org.springframework.context.support.ClassPathXmlApplicationConte

我不熟悉Java Springs

我创建了一个名为com.MyFirstSpringPackage的包,其中有几个Java文件,还有一个XML文件(在包外部),它们调用了类构造函数(连接bean),一切都很顺利

现在,我决定使用eclipse将此XML文件拖放到包中,然后程序开始抛出错误:

以下是stacktrace:

Jun 17, 2014 11:03:12 AM org.springframework.context.support.ClassPathXmlApplicationContext prepareRefresh
INFO: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@15327b79: startup date [Tue Jun 17 11:03:12 IST 2014]; root of context hierarchy
Jun 17, 2014 11:03:12 AM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
INFO: Loading XML bean definitions from class path resource [FirstSprings.xml]
Exception in thread "main" org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [FirstSprings.xml]; nested exception is java.io.FileNotFoundException: class path resource [FirstSprings.xml] cannot be opened because it does not exist
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:343)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:303)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:180)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:216)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:187)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:251)
    at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:127)
    at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:93)
    at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:129)
    at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:540)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:454)
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
    at com.MyFirstSpringPackage.MainSpring.main(MainSpring.java:10)
Caused by: java.io.FileNotFoundException: class path resource [FirstSprings.xml] cannot be opened because it does not exist
    at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:172)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:329)
2014年6月17日上午11:03:12 org.springframework.context.support.ClassPathXmlApplicationContext prepareRefresh
信息:刷新org.springframework.context.support。ClassPathXmlApplicationContext@15327b79:启动日期[2014年6月17日星期二11:03:12];上下文层次结构的根
2014年6月17日上午11:03:12 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
信息:从类路径资源[FirstSprings.XML]加载XMLbean定义
线程“main”org.springframework.beans.factory.BeanDefinitionStoreException中的异常:IOException解析来自类路径资源[FirstSprings.XML]的XML文档;嵌套异常为java.io.FileNotFoundException:无法打开类路径资源[FirstSprings.xml],因为它不存在
位于org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:343)
位于org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:303)
位于org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:180)
位于org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:216)
位于org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:187)
位于org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:251)
位于org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:127)
位于org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:93)
位于org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:129)
位于org.springframework.context.support.AbstractApplicationContext.AcquitainFreshBeanFactory(AbstractApplicationContext.java:540)
位于org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:454)
位于org.springframework.context.support.ClassPathXmlApplicationContext。(ClassPathXmlApplicationContext.java:139)
位于org.springframework.context.support.ClassPathXmlApplicationContext。(ClassPathXmlApplicationContext.java:83)
位于com.MyFirstSpringPackage.MainSpring.main(MainSpring.java:10)
原因:java.io.FileNotFoundException:无法打开类路径资源[FirstSprings.xml],因为它不存在
位于org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:172)
位于org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:329)

这个错误的原因是什么?为什么我不能将它移动到包中,而包只是一个文件夹?

您可以尝试使用包名引用xml文件,如:

String xmlFile = "com/MyFirstSpringPackage/FirstSprings.xml";

我也面临同样的问题,解决方法是使用前斜杠
/
提及spring xml文件路径,如下所示:

Resource r = new ClassPathResource("com/ioc/container/resources/springioc.xml");

工作正常。

请显示引用了
FirstSprings.xml
的代码好吗?@kingsmasher1在像com/MyFirstSpringPackage/FirstSprings.xml那样移动包名之后,您是否使用包名引用了xml文件?@Jens:
ApplicationContext context=new ClassPathXmlApplicationContext(“FirstSprings.xml”)@Arvind:谢谢,这就解决了问题issue@kingsmasher1尝试使用
newclasspathXMLApplicationContext(“/FirstSprings.xml”)