0
我無法讓Spring從我的類路徑中讀取applicationContext.xml文件。如何在類路徑中指定資源
appContext = new ClassPathXmlApplicationContext("classpath:applicationContext.xml");
和
appContext = new ClassPathXmlApplicationContext("applicationContext.xml");
原因下面的錯誤。
Exception in thread "main" org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [applicationContext.xml]; nested exception is java.io.FileNotFoundException: class path resource
[applicationContext.xml] cannot be opened because it does not exist
at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:341)
at
org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)
以下代碼正確列出了我的classpath上的所有jar文件,包括帶有applicationContext文件的jar文件。
ClassLoader cl = ClassLoader.getSystemClassLoader();
URL[] urls = ((URLClassLoader)cl).getURLs();
for(URL url: urls){System.out.println(url.getFile());}
其中一個罐子都有一個包含我的「的applicationContext.xml」文件資源文件夾。我用7-Zip打開了jar文件,確保它在那裏。
我添加了一些代碼,試圖查看列出我的jar文件的類加載器是否可以找到它。
URL appContextURL=cl.getResource("applicationContext.xml");
if(appContextLocation==null){
logger.info("context not found in classpath");
}else{
logger.info("Application context found at " + appContextLocation);
}
這也找不到它。
我該怎麼做才能確保找到applicationContext.xml?
你把你的applicationContext.xml放在哪裏? – kuhajeyan
您正在使用哪種IDE? –
如果它有一個'resources'文件夾,那麼你的路徑應該是'/ resources/applicationContext.xml',你現在將會從classpath的根目錄下載它。 –