GVKun编程网logo

使用Spring- Boot启动Tomcat上下文时出错:java.lang.ClassNotFoundException:org.apache.tomcat.dbcp.dbcp.BasicDataSource

14

在本文中,我们将详细介绍使用Spring-Boot启动Tomcat上下文时出错:java.lang.ClassNotFoundException:org.apache.tomcat.dbcp.dbcp

在本文中,我们将详细介绍使用Spring- Boot启动Tomcat上下文时出错:java.lang.ClassNotFoundException:org.apache.tomcat.dbcp.dbcp.BasicDataSource的各个方面,同时,我们也将为您带来关于Caused by: java.io.FileNotFoundException: class path resource [com/cxy/springboot/mapping/] canno...、class"org.apache.commons.dbcp.BasicDataSource"not found出错的解决办法、ClassNotFoundException: org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory、ClassNotFoundException启动tomcat时出错的有用知识。

本文目录一览:

使用Spring- Boot启动Tomcat上下文时出错:java.lang.ClassNotFoundException:org.apache.tomcat.dbcp.dbcp.BasicDataSource

使用Spring- Boot启动Tomcat上下文时出错:java.lang.ClassNotFoundException:org.apache.tomcat.dbcp.dbcp.BasicDataSource

我最近决定将spring-boot添加到使用Java代码配置的hibernate的现有spring项目中。我有这个pom.xml文件:

<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">    <modelVersion>4.0.0</modelVersion>    <groupId>com.spring</groupId>    <artifactId>app</artifactId>    <version>0.1.0</version>    <parent>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-starter-parent</artifactId>        <version>1.1.8.RELEASE</version>    </parent>    <dependencies>        <dependency>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-starter-web</artifactId>        </dependency>        <dependency>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-starter-actuator</artifactId>        </dependency>        <dependency>            <groupId>org.springframework.security</groupId>            <artifactId>spring-security-web</artifactId>            </dependency>        <dependency>            <groupId>org.springframework.security</groupId>            <artifactId>spring-security-config</artifactId>            </dependency>        <dependency>            <groupId>org.springframework.security</groupId>            <artifactId>spring-security-taglibs</artifactId>            </dependency>        <dependency>           <groupId>org.hibernate</groupId>           <artifactId>hibernate-core</artifactId>           <version>4.3.6.Final</version>        </dependency>        <dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-orm</artifactId>            </dependency>        <dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-tx</artifactId>            </dependency>    </dependencies>    <properties>        <start-class>com.spring.app.Application</start-class>    </properties>    <build>        <plugins>            <plugin>                <groupId>org.springframework.boot</groupId>                <artifactId>spring-boot-maven-plugin</artifactId>            </plugin>        </plugins>    </build></project>

当我尝试运行应用程序时(在命令之后:mvn compile / mvn package / java -jar),出现此错误:

Caused by: java.lang.ClassNotFoundException: org.apache.tomcat.dbcp.dbcp.BasicDataSource    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)    at java.security.AccessController.doPrivileged(Native Method)    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)    at org.springframework.boot.loader.LaunchedURLClassLoader.doLoadClass(LaunchedURLClassLoader.java:168)    at org.springframework.boot.loader.LaunchedURLClassLoader.loadClass(LaunchedURLClassLoader.java:134)    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)    ... 136 common frames omitted

有人可以告诉我我在这里想念的吗?

答案1

小编典典

按照此处发布的两个答案(一个已删除),我将这两个依赖项添加到我的pom.xml中:

    <dependency>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-starter-data-jpa</artifactId>    </dependency>    <dependency>        <groupId>commons-dbcp</groupId>        <artifactId>commons-dbcp</artifactId>    </dependency>

并删除这三个:

   <dependency>       <groupId>org.hibernate</groupId>       <artifactId>hibernate-core</artifactId>       <version>4.3.6.Final</version>    </dependency>    <dependency>        <groupId>org.springframework</groupId>        <artifactId>spring-orm</artifactId>        </dependency>    <dependency>        <groupId>org.springframework</groupId>        <artifactId>spring-tx</artifactId>        </dependency>

这样就解决了问题。

Caused by: java.io.FileNotFoundException: class path resource [com/cxy/springboot/mapping/] canno...

Caused by: java.io.FileNotFoundException: class path resource [com/cxy/springboot/mapping/] canno...

java.lang.IllegalStateException: Failed to load ApplicationContext

    at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:125)
    at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:108)
    at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary(ServletTestExecutionListener.java:190)
    at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance(ServletTestExecutionListener.java:132)
    at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:246)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:227)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:289)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:291)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:246)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:97)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
    at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
    at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:190)
    at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
    at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ''rabbitOrderSender'': Unsatisfied dependency expressed through field ''brokerMessageLogMapper''; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ''brokerMessageLogMapper'' defined in file [D:\java\idea\rabbitmq-springboot-producer\target\classes\com\cxy\springboot\mapper\BrokerMessageLogMapper.class]: Cannot resolve reference to bean ''sqlSessionFactory'' while setting bean property ''sqlSessionFactory''; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ''sqlSessionFactory'' defined in class path resource [com/cxy/springboot/config/database/MybatisDataSourceConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.ibatis.session.SqlSessionFactory]: Factory method ''sqlSessionFactoryBean'' threw exception; nested exception is java.lang.RuntimeException: java.io.FileNotFoundException: class path resource [com/cxy/springboot/mapping/] cannot be resolved to URL because it does not exist
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:587)
    at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:91)
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:373)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1348)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:578)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:501)
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:317)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:315)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:760)
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:869)
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:550)
    at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759)
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:395)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:327)
    at org.springframework.boot.test.context.SpringBootContextLoader.loadContext(SpringBootContextLoader.java:139)
    at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:99)
    at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:117)
    ... 24 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ''brokerMessageLogMapper'' defined in file [D:\java\idea\rabbitmq-springboot-producer\target\classes\com\cxy\springboot\mapper\BrokerMessageLogMapper.class]: Cannot resolve reference to bean ''sqlSessionFactory'' while setting bean property ''sqlSessionFactory''; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ''sqlSessionFactory'' defined in class path resource [com/cxy/springboot/config/database/MybatisDataSourceConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.ibatis.session.SqlSessionFactory]: Factory method ''sqlSessionFactoryBean'' threw exception; nested exception is java.lang.RuntimeException: java.io.FileNotFoundException: class path resource [com/cxy/springboot/mapping/] cannot be resolved to URL because it does not exist
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:378)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:110)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1609)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1361)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:578)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:501)
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:317)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:315)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
    at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:251)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1138)
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1065)
    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:584)
    ... 42 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ''sqlSessionFactory'' defined in class path resource [com/cxy/springboot/config/database/MybatisDataSourceConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.ibatis.session.SqlSessionFactory]: Factory method ''sqlSessionFactoryBean'' threw exception; nested exception is java.lang.RuntimeException: java.io.FileNotFoundException: class path resource [com/cxy/springboot/mapping/] cannot be resolved to URL because it does not exist
    at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:587)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1254)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1103)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:541)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:501)
    at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:317)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:315)
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:367)
    ... 55 more
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.ibatis.session.SqlSessionFactory]: Factory method ''sqlSessionFactoryBean'' threw exception; nested exception is java.lang.RuntimeException: java.io.FileNotFoundException: class path resource [com/cxy/springboot/mapping/] cannot be resolved to URL because it does not exist
    at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
    at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:579)
    ... 64 more
Caused by: java.lang.RuntimeException: java.io.FileNotFoundException: class path resource [com/cxy/springboot/mapping/] cannot be resolved to URL because it does not exist
    at com.cxy.springboot.config.database.MybatisDataSourceConfig.sqlSessionFactoryBean(MybatisDataSourceConfig.java:33)
    at com.cxy.springboot.config.database.MybatisDataSourceConfig$$EnhancerBySpringCGLIB$$1b762c27.CGLIB$sqlSessionFactoryBean$1(<generated>)
    at com.cxy.springboot.config.database.MybatisDataSourceConfig$$EnhancerBySpringCGLIB$$1b762c27$$FastClassBySpringCGLIB$$7b648944.invoke(<generated>)
    at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
    at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:361)
    at com.cxy.springboot.config.database.MybatisDataSourceConfig$$EnhancerBySpringCGLIB$$1b762c27.sqlSessionFactoryBean(<generated>)
    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 org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
    ... 65 more
Caused by: java.io.FileNotFoundException: class path resource [com/cxy/springboot/mapping/] cannot be resolved to URL because it does not exist
    at org.springframework.core.io.ClassPathResource.getURL(ClassPathResource.java:195)
    at org.springframework.core.io.support.PathMatchingResourcePatternResolver.findPathMatchingResources(PathMatchingResourcePatternResolver.java:495)
    at org.springframework.core.io.support.PathMatchingResourcePatternResolver.getResources(PathMatchingResourcePatternResolver.java:296)
    at com.cxy.springboot.config.database.MybatisDataSourceConfig.sqlSessionFactoryBean(MybatisDataSourceConfig.java:27)
    ... 75 more

报错,一直报:

FileNotFoundException: class path resource [com/cxy/springboot/mapping/] cannot be resolved to URL because it does not

 

existbean.setMapperLocations(resolver.getResources("classpath:com/cxy/springboot/mapping/*.xml"));

 

报这个地方找不到不存在,,那么什么问题呢,,

我在 classpath 后面加上 *  就解决了这个报错

然后又报了另外的错

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.cxy.springboot.mapper.OrderMapper.insert

 

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.cxy.springboot.mapper.OrderMapper.insert

    at org.apache.ibatis.binding.MapperMethod$SqlCommand.<init>(MapperMethod.java:214)
    at org.apache.ibatis.binding.MapperMethod.<init>(MapperMethod.java:48)
    at org.apache.ibatis.binding.MapperProxy.cachedMapperMethod(MapperProxy.java:59)
    at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:52)
    at com.sun.proxy.$Proxy73.insert(Unknown Source)
    at com.cxy.springboot.service.OrderService.createOrder(OrderService.java:34)
    at com.cxy.springboot.ApplicationTests.testCreateOrder(ApplicationTests.java:63)
    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 org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    at org.springframework.test.context.junit4.statements.RunBeforeTestExecutionCallbacks.evaluate(RunBeforeTestExecutionCallbacks.java:73)
    at org.springframework.test.context.junit4.statements.RunAfterTestExecutionCallbacks.evaluate(RunAfterTestExecutionCallbacks.java:83)
    at org.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:75)
    at org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:86)
    at org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:84)
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:251)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:97)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
    at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
    at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:190)
    at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
    at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
</build>

加上上面resource部分就好了,是由于
war包里面缺少Mapper对应的xml文件,也就是没有把xml文件打包进去。解决办法是,在pom.xml文件中的build标签中添加如下代码,显示的强制将xml文件打到war包中:

 

class

class"org.apache.commons.dbcp.BasicDataSource"not found出错的解决办法

法1:在项目上右击build path—>configure build path..—>add library..—>MyEclipse Libraries选中Spring 2.0 Persistence JDBC libraries,同时可能会用到Spring 2.0 Persistence CORE libraries所以系统自动选上了,点击finish就可以了!!!

方法2:使用MyEclipse整合Struts+Spring+Hibernate时,在“applicationContext.xml”中提示class"org.apache.commons.dbcp.BasicDataSource"not found。

到http://commons.apache.org/dbcp/downloads.html下载jar包加入lib即可.

ClassNotFoundException: org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory

ClassNotFoundException: org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory

tomcat 8.5 或是9.0,这些版本的tomcat内置的DBCP2

tomcat 7的用的是DBCP

以上错误可能是版本问题

换成相对应的tomcat版本即可解决

ClassNotFoundException启动tomcat时出错

ClassNotFoundException启动tomcat时出错

我正在尝试从eclipse设置tomcat服务器,但是这个错误使我困扰了很长时间,而且我没有找到任何解决方案。

我试过了:

  • 在类路径中添加spring-context,spring-core,spring-web依赖项。
  • 修改项目属性(“部署程序集”部分)。
  • 清理tomcat服务器目录。

这是我的web.xml

<?xml version="1.0" encoding="UTF-8"?><web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">    <!-- The definition of the Root Spring Container shared by all Servlets and Filters -->    <context-param>        <param-name>contextConfigLocation</param-name>        <param-value>/WEB-INF/spring/root-context.xml</param-value>    </context-param>    <!-- Creates the Spring Container shared by all Servlets and Filters -->    <listener>        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>    </listener>    <!-- Processes application requests -->    <servlet>        <servlet-name>appServlet</servlet-name>        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>        <init-param>            <param-name>contextConfigLocation</param-name>            <param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value>        </init-param>        <load-on-startup>1</load-on-startup>    </servlet>    <servlet-mapping>        <servlet-name>appServlet</servlet-name>        <url-pattern>/</url-pattern>    </servlet-mapping></web-app>

这是跟踪:

Nov 03, 2014 5:40:26 PM com.springsource.tcserver.security.PropertyDecoder <init>INFO: tc Runtime property decoder using memory-based keyNov 03, 2014 5:40:27 PM com.springsource.tcserver.security.PropertyDecoder <init>INFO: tcServer Runtime property decoder has been initialized in 153 msNov 03, 2014 5:40:27 PM org.apache.coyote.AbstractProtocol initINFO: Initializing ProtocolHandler ["http-bio-8080"]Nov 03, 2014 5:40:28 PM com.springsource.tcserver.serviceability.rmi.JmxSocketListener initINFO: Started up JMX registry on 127.0.0.1:6969 in 189 msNov 03, 2014 5:40:28 PM org.apache.catalina.startup.Catalina loadINFO: Initialization processed in 1258 msNov 03, 2014 5:40:28 PM org.apache.catalina.core.StandardService startInternalINFO: Starting service CatalinaNov 03, 2014 5:40:28 PM org.apache.catalina.core.StandardEngine startInternalINFO: Starting Servlet Engine: VMware vFabric tc Runtime 2.8.2.RELEASE/7.0.35.B.RELEASENov 03, 2014 5:40:28 PM org.apache.catalina.startup.HostConfig deployDescriptorINFO: Deploying configuration descriptor /home/karim/Downloads/.springsource/vfabric-tc-server-developer-2.8.2.RELEASE/base-instance/conf/Catalina/localhost/task-manager.xmlNov 03, 2014 5:40:28 PM org.apache.catalina.startup.SetContextPropertiesRule beginWARNING: [SetContextPropertiesRule]{Context} Setting property ''source'' to ''org.eclipse.jst.jee.server:task-manager'' did not find a matching property.Nov 03, 2014 5:40:28 PM org.apache.catalina.core.StandardContext listenerStartSEVERE: Error configuring application listener of class org.springframework.web.context.ContextLoaderListenerjava.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)    at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:527)    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:509)    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:137)    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4733)    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5291)    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)    at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:657)    at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1637)    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)    at java.util.concurrent.FutureTask.run(FutureTask.java:262)    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)    at java.lang.Thread.run(Thread.java:745)

请,如果您需要其他东西,请告诉我。

答案1

小编典典

有问题的类在spring-web-????? RELEASE.jar中。进行战争,然后使用诸如Winzip或7Zip之类的文件将其打开,然后在WEB-INF
/ lib中查找jar,我想那是不存在的。如果您使用的Maven包括以下依赖项:

<dependency>    <groupId>org.springframework</groupId>    <artifactId>spring-web</artifactId>    <version>${or.springframework-version}</version></dependency>

如果您不使用maven,并且我想您在提到部署程序集时正在Eclipse中进行此操作,则必须将用于使这些jar可供编译的所有库添加到eclipse构建中。或者,您可以直接将jar移至WEB-
INF / lib。

在构建之后检查jar文件的战争情况。

关于使用Spring- Boot启动Tomcat上下文时出错:java.lang.ClassNotFoundException:org.apache.tomcat.dbcp.dbcp.BasicDataSource的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于Caused by: java.io.FileNotFoundException: class path resource [com/cxy/springboot/mapping/] canno...、class"org.apache.commons.dbcp.BasicDataSource"not found出错的解决办法、ClassNotFoundException: org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory、ClassNotFoundException启动tomcat时出错的相关知识,请在本站寻找。

本文标签: