【问题标题】:java.io.FileNotFoundException: class path resource Application Contextjava.io.FileNotFoundException:类路径资源应用程序上下文
【发布时间】:2017-03-09 15:24:45
【问题描述】:

我写了以下代码:

public static void main(String[] args){
    ApplicationContext ctx= new ClassPathXmlApplicationContext("classpath:/org/postprocessor/conf/dataSupport.xml");
    DaoImpl daoImpl=null;
    FileZipper fileZipper=null;
}

但是当我执行这个时,我得到了以下异常:

log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [org/postprocessor/config/dataSupport.xml]; nested exception is java.io.FileNotFoundException: class path resource [org/postprocessor/config/dataSupport.xml] cannot be opened because it does not exist
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:344)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:217)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:188)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:252)
    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:612)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:513)
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
    at org.postprocessor.dao.DaoMain.main(DaoMain.java:12)
Caused by: java.io.FileNotFoundException: class path resource [org/postprocessor/config/dataSupport.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:330)
    ... 13 more

为什么我得到这个异常,即使文件在那里?

【问题讨论】:

  • FileNotFoundException: class path resource [org/postprocessor/config/dataSupport.xml] cannot be opened because it does not exist 很清楚 imo。
  • 但是文件在那里,我可以看到包和文件...有什么遗漏的
  • 我确定出了什么问题:它找不到您的文件。你确定你的 xml 文件在你的类路径中吗? (查看您的输出文件夹,如果它是 web 应用程序,可能在 WEB-INF/classes 中。
  • 它不是一个webapp,但是这个文件在这个包src org/postprocessor/dataSupport.xml下
  • 但是这个包在 Eclipse 中显示为白色,而所有其他包为棕色..这是否意味着这不存在...对不起,我是 maven 项目的新手

标签: java spring maven


【解决方案1】:

如果您使用的是 maven 项目,它应该位于 src/main/resources 文件夹中。 例如:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-11
    • 2015-11-09
    • 1970-01-01
    • 2022-11-04
    • 2018-09-16
    • 2014-12-03
    • 2014-08-07
    • 1970-01-01
    相关资源
    最近更新 更多