java - Java.io.FileNotFoundException:类路径资源[../ProductDao.class]无法打开,因为它不存在

标签 java spring hibernate spring-mvc intellij-idea

我的项目结构是下面的屏幕截图。实际上,虽然文件存在,但我找不到文件错误,我将在下面添加错误。我是Intellej的新手,这是我的第一个项目,我尝试通过使用mysql连接到数据库来建立音乐商店。我的applicaiton-context.xml在下面,调度程序和web.xml是正确的。

application-context.xml

project structure

我的日志文件是

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1095)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:672)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)

原因:java.io.FileNotFoundException:类路径资源[com / emusicstore / Dao / ProductDao.class]无法打开,因为它不存在
在org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:172)
在org.springframework.core.type.classreading.SimpleMetadataReader。(SimpleMetadataReader.java:50)
在org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:98)
在org.springframework.core.type.classreading.CachingMetadataReaderFactory.getMetadataReader(CachingMetadataReaderFactory.java:102)
在org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:93)
在org.springframework.context.annotation.ConfigurationClassParser.asSourceClass(ConfigurationClassParser.java:621)
在org.springframework.context.annotation.ConfigurationClassParser $ SourceClass.getInterfaces(ConfigurationClassParser.java:797)
在org.springframework.context.annotation.ConfigurationClassParser.doProcessConfigurationClass(ConfigurationClassParser.java:298)
在org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:232)
在org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:199)
在org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:168)
...另外32个

2016年3月18日10:37:15.310严重[http-nio-8080-exec-1] org.apache.catalina.core.StandardWrapperValve.invoke为servlet调度程序分配异常
java.io.FileNotFoundException:类路径资源[com / emusicstore / Dao / ProductDao.class]无法打开,因为它不存在
在org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:172)
在org.springframework.core.type.classreading.SimpleMetadataReader。(SimpleMetadataReader.java:50)
在org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:98)
在org.springframework.core.type.classreading.CachingMetadataReaderFactory.getMetadataReader(CachingMetadataReaderFactory.java:102)
在org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:93)
在org.springframework.context.annotation.ConfigurationClassParser.asSourceClass(ConfigurationClassParser.java:621)
在org.springframework.context.annotation.ConfigurationClassParser $ SourceClass.getInterfaces(ConfigurationClassParser.java:797)
在org.springframework.context.annotation.ConfigurationClassParser.doProcessConfigurationClass(ConfigurationClassParser.java:298)
在org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:232)
在org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:199)
在org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:168)
在org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:321)
在org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:243)处
在org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:273)
在org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:98)
在org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:678)处
在org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:520)
在org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:667)
在org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:633)
在org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:681)
在org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:552)
在org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:493)
在org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:136)
在javax.servlet.GenericServlet.init(GenericServlet.java:158)
在org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1238)
在org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1151)
在org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:828)
在org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:135)
在org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
在org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
在org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
在org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
在org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
在org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522)
在org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1095)
在org.apache.coyote.AbstractProtocol $ AbstractConnectionHandler.process(AbstractProtocol.java:672)
在org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.doRun(NioEndpoint.java:1500)
在org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.run(NioEndpoint.java:1456)
在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
在java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)
在org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run(TaskThread.java:61)
在java.lang.Thread.run(Thread.java:745)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1095)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:672)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)

原因:java.io.FileNotFoundException:类路径资源[com / emusicstore / Dao / ProductDao.class]无法打开,因为它不存在
在org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:172)
在org.springframework.core.type.classreading.SimpleMetadataReader。(SimpleMetadataReader.java:50)
在org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:98)
在org.springframework.core.type.classreading.CachingMetadataReaderFactory.getMetadataReader(CachingMetadataReaderFactory.java:102)
在org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:93)
在org.springframework.context.annotation.ConfigurationClassParser.asSourceClass(ConfigurationClassParser.java:621)
在org.springframework.context.annotation.ConfigurationClassParser $ SourceClass.getInterfaces(ConfigurationClassParser.java:797)
在org.springframework.context.annotation.ConfigurationClassParser.doProcessConfigurationClass(ConfigurationClassParser.java:298)
在org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:232)
在org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:199)
在org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:168)
...另外32个

2016年3月18日10:37:16.340严重[http-nio-8080-exec-3] org.apache.catalina.core.StandardWrapperValve.invoke为servlet调度程序分配异常
java.io.FileNotFoundException:类路径资源[com / emusicstore / Dao / ProductDao.class]无法打开,因为它不存在
在org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:172)
在org.springframework.core.type.classreading.SimpleMetadataReader。(SimpleMetadataReader.java:50)
在org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:98)
在org.springframework.core.type.classreading.CachingMetadataReaderFactory.getMetadataReader(CachingMetadataReaderFactory.java:102)
在org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader(SimpleMetadataReaderFactory.java:93)
在org.springframework.context.annotation.ConfigurationClassParser.asSourceClass(ConfigurationClassParser.java:621)
在org.springframework.context.annotation.ConfigurationClassParser $ SourceClass.getInterfaces(ConfigurationClassParser.java:797)
在org.springframework.context.annotation.ConfigurationClassParser.doProcessConfigurationClass(ConfigurationClassParser.java:298)
在org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:232)
在org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:199)
在org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:168)
在org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:321)
在org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:243)处
在org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:273)
在org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:98)
在org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:678)处
在org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:520)
在org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:667)
在org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:633)
在org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:681)
在org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:552)
在org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:493)
在org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:136)
在javax.servlet.GenericServlet.init(GenericServlet.java:158)
在org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1238)
在org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1151)
在org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:828)
在org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:135)
在org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
在org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
在org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
在org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
在org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
在org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522)
在org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1095)
在org.apache.coyote.AbstractProtocol $ AbstractConnectionHandler.process(AbstractProtocol.java:672)
在org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.doRun(NioEndpoint.java:1500)
在org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.run(NioEndpoint.java:1456)
在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
在java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)
在org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run(TaskThread.java:61)
在java.lang.Thread.run(Thread.java:745)

最佳答案

检查目标文件夹,看看是否存在ProductDao.class,如果没有编译,我认为您有时在Intellij中使用Intellij,则目标文件夹会自动被排除,右键单击目标文件夹并选择取消排除。并确保该类在dao包下存在,并且该类的名称相同。另外,请检查Bean是否配置正确。

我看到您的Target文件夹已被排除,因为它是红色的,因此请尝试取消排除不成功的排除,请显示如何将ProductDao配置为bean。

关于java - Java.io.FileNotFoundException:类路径资源[../ProductDao.class]无法打开,因为它不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36088819/

相关文章:

java - 避免条件的清洁方法

java - Spring 启动 FileNotFoundException : Could not open ServletContext resource [/WEB-INF/main-servlet. xml]

java - 如何标准化 JHipster 应用程序中的 REST 错误?

java - 使用 RabbitMQ 的 Spring Boot 无法初始化

java - 使用命名参数的 native 查询失败并显示 "Not all named parameters have been set"

java - 使用 JMH 控制方法的顺序

java - TransactionSynchronizationManager 内的单元测试代码

mysql - 尝试更新/保存某些实体时,Spring + Hibernate + Mysql 抛出 SQLGrammarExeception。阅读效果很好

java - JPA OneToMany 集合的条件

java - 使用java美化json文件