2016-03-24 4 views
0

Ich benutze idea Maven ArchetypRelevante Weg zu den Ressourcen in Maven Urbilder

src 
---main 
------java 
------resources 

In meiner Ressourcen Ordner ich spring_config.xml Und wenn ich diesen Code ausführen:

ConfigurableApplicationContext ctx = new ClassPathXmlApplicationContext("spring_config.xml"); 

Exception sagt mir, dass Config Datei wurde nicht gefunden. Bei meinem vorherigen Projekt hat alles perfekt funktioniert.

INFO: Loading XML bean definitions from class path resource [spring_config.xml] 
Exception in thread "main" org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [spring_config.xml]; nested exception is java.io.FileNotFoundException: class path resource [spring_config.xml] cannot be opened because it does not exist 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:303) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:174) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:209) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:180) 
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:243) 
    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:130) 
    at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:542) 
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:451) 
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139) 
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83) 
    at ua.epam.spring.hometask.ui.console.SpringHometaskConsoleUI.initContext(SpringHometaskConsoleUI.java:41) 
    at ua.epam.spring.hometask.ui.console.SpringHometaskConsoleUI.main(SpringHometaskConsoleUI.java:36) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:498) 
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144) 
Caused by: java.io.FileNotFoundException: class path resource [spring_config.xml] cannot be opened because it does not exist 
    at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:171) 
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:329) 
    ... 19 more 

Könnte mir jemand erklären, was passiert ist? Warum sieht ein Projekt den relevanten Pfad zum Ressourcenordner und einen anderen nicht?

+0

'neuer ClassPathXmlApplicationContext ("/spring_config.xml ");' Beachten Sie den Schrägstrich. – Tunaki

+0

Ich fange trotzdem 'java.io.FileNotFoundException' Ausnahme –

+0

Bitte posten Sie die genaue Strack-Trace und Ihren Code. – Tunaki

Antwort

1

Versuchen Sie Ihren Kontext Standort so bieten:

"classpath*:spring_config.xml" 

Maven werden die Ordner-Ressourcen auf dem Classpath ohne weitere Aktion hinzufügen. In Eclipse kann es notwendig sein, es dem Build-Pfad hinzuzufügen.

Verwandte Themen