错误如下:

A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].StandardContext

还有一种错误是:

org.springframework.web.SpringServletContainerInitializer cannot be cast to javax.servlet.ServletContainerInitializer

可以尝试以下方法:

1、可能引入的servlet版本太高了,比如3.1版本的与Tomcat7插件兼容,可以尝试降级3.0.1。可以参照官方表格进行引入:http://tomcat.apache.org/whichversion.html

2、可能是web.xml的头部版本太高了,可以尝试修改成:****http://java.sun.com/xml/ns/javaee/" id="WebApp_ID" version="2.5"> ****或者2.4这样的。

3、但是观察上面报错的原因,问题出现在:org.springframework.web.SpringServletContainerInitializer cannot be cast to javax.servlet.ServletContainerInitializer,也就是servlet-api.jar包冲突了导致的。可以尝试排除commons-logging.jar包,因为commons-logging中引入了2.3的servlet-api.jar。

    <dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.1.4.RELEASE</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>

</exclusions>
</dependency>

但这种方式不一定有效。

也就是围绕包冲突的线索去找一下,参考依赖书去查看是否有冲突的包导致的。

4、尝试把scope加上provided,也就是作用域改成编译时使用,而打包不需要带上:

    <dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>

5、可以尝试一下把POM上的servlet-api删除,然后在Eclipse的Build Path中加入servlet-api,但这种治标不治本。

6、尝试使用以下的servlet-api:

<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-servlet-api</artifactId>
<version>7.0.76</version>
<scope>provided</scope>
</dependency>

7、经过测试,发觉同一份代码在Mac上正常使用,而在Windows上却出现这样的错误,两台电脑唯一不同的是JDK和Maven的版本,接下来尝试将Windows上的Maven升级到最新版本。意外竟然启动成功了

由于使用的是Windows 10系统,可能JDK版本的问题导致的,先删除旧版的JDK和Maven以及Maven本地仓库,下载最新版本的JDK_1.8.0_131和Maven3.5。安装配置路径参考:http://www.cnblogs.com/EasonJim/p/6821717.html

Maven使用tomcat7-maven-plugin插件run时出现错误: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component的更多相关文章

  1. maven运行出现错误:Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].StandardContext[]](xjl456852原创)

    maven在使用tomcat插件tomcat7-maven-plugin:2.2:run运行项目,出现下面错误: 严重: A child container failed during start j ...

  2. maven开发项目中遇到的问题 StartChild.call at java.util.concurrent.FutureTask.run

    这个原因是没有配置 pom中没有配置 <scope>provided</scope>  导致冲突 正确的配置文件如下 <project xmlns="http: ...

  3. org.apache.catalina.LifecycleException tomcat 启动 maven 处处都是坑!!!

    问题1:tomcat不识别maven工程解决办法:project右击->Properties->Project Facets,选择Dynamic Web Module及其版本(tomcat ...

  4. Eclipse Maven项目报错2之A child container failed during start

    问题:在同事那里拿了一个Eclipse的maven项目,导入报错,主要显示的是A child container failed during start 具体错误如下 六月 02, 2018 12:0 ...

  5. Tomcat部署项目时出错java.lang.IllegalStateException: ContainerBase.addChild: start:org.apache.catalina.Life

    Tomcat部署项目时出错java.lang.IllegalStateException: ContainerBase.addChild: start:org.apache.catalina.Life ...

  6. MyEclispe启动Tomcat7时出现错误The servlets named [LoginServlet] and [com.liu.control.LoginServlet] are both

    刚开始尝试写Servlet代码,第一天就碰到这个错误,在网上找了很多资料才找到解决办法,在此记录一下. org.apache.catalina.LifecycleException: Failed t ...

  7. Tomcat部署启动时发生错误

    Tomcat启动后项目地址显示404:源服务器未能找到目标资源的表示或者是不愿公开一个已经存在的资源表示. 严重: ContainerBase.addChild: start: org.apache. ...

  8. Eclipse运行Maven的SpringMVC项目Run on Server时出现错误:Error configuring application listener of class org.springframework.web.context.ContextLoaderListener的问题解决

    错误: 严重: Error configuring application listener of class org.springframework.web.context.ContextLoade ...

  9. maven编译问题-maven项目运行时找不到文件,解决方案之一

    问题描述:以上信息是tomcat在启动项目的时候报的错误信息,发现没有找到配置文件,实际上配置文件在项目中是存在的,但是,在编译过程中,配置文件没有能加载到编译后的项目中.就造成了,找不到这些怕配置文 ...

随机推荐

  1. x86和i386

    x86: 1 9 7 8年6月,I n t e l公司推出了8 0 8 6,一个1 6位微处理器,它可访问的存储空间达到1 M B. Intel x86家族继续发展,1 9 8 5年出现了3 2位的3 ...

  2. du - 报告磁盘空间使用情况

    总览 du [options] [file...] POSIX 选项: [-askx] GNU 选项 (最短格式): [-abcDhHklLmsSxX] [--block-size=size] [-- ...

  3. python基础一 day6 文件操作

    读写只会进行两步, r+模式下写读 seek是按字节去找的 for line in f: for循环是一行一行的读取出来 strip默认去空格和换行符 空格.制表符.换行符.回车.换页垂直制表符和换行 ...

  4. 【vc】高精度时间函数的使用

    方法一: 函数定义如下: int UsSleep(int us);//返回实际的微秒延时时间 代码实现如下: //参数一表示 需要等待的时间 微秒为单位 int UsSleep(int us) { / ...

  5. python爬虫---实现项目(一) Requests爬取HTML信息

    上面的博客把基本的HTML解析库已经说完了,这次我们来给予几个实战的项目. 这次主要用Requests库+正则表达式来解析HTML. 项目一:爬取猫眼电影TOP100信息 代码地址:https://g ...

  6. python爬虫---从零开始(六)Selenium库

    什么是Selenium库: 自动化测试工具,支持多种浏览器.支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera ...

  7. Hibernate初始化环境的基本封装

    public class HibernateUtils { private static SessionFactory sf; static{ sf = new Configuration().con ...

  8. css--字体和文本样式

    文字样式属性 字体:font-family 文字大小:font-size 文字颜色:font-color 文字粗细:font-weight 文字样式:font-style font-family字体属 ...

  9. linux(Ubuntu/Centos) iproute 路由IP地址等命令集合,查看端口链接

    原 linux(Ubuntu/Centos) iproute 路由IP地址等命令集合,查看端口链接 2017年03月20日 16:55:57 风来了- 阅读数:2291 标签: centoslinux ...

  10. VS2015安装SVN插件

    一.下载VISUALlSVN 官网下载:地址 选择[VisualSVN for Visual Studio 2015 and older]的下载按钮下载,目前版本号VisualSVN 5.1.9,支持 ...