作为Maven小白,今天这问题困扰了我好久,经过多次在网上查询,终于找到了原因。明明一个小问题却耗费很多时间,着实不应该,所以必须记录一下。

报错信息如下:

对话框:

控制台:

  1. <span style="font-size:14px;"><span style="color:#ff0000;">严重: A child container failed during start
  2. java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/SpringMvcController]]
  3. at java.util.concurrent.FutureTask.report(Unknown Source)
  4. at java.util.concurrent.FutureTask.get(Unknown Source)
  5. at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:916)
  6. at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:871)
  7. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
  8. at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1408)
  9. at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1398)
  10. at java.util.concurrent.FutureTask.run(Unknown Source)
  11. at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
  12. at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
  13. at java.lang.Thread.run(Unknown Source)
  14. Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/SpringMvcController]]
  15. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
  16. ... 6 more
  17. Caused by: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@43cd5898]
  18. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
  19. at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4909)
  20. at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5039)
  21. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
  22. ... 6 more
  23. Caused by: org.apache.catalina.LifecycleException: Failed to initialize component [org.apache.catalina.webresources.JarResourceSet@4d31c0af]
  24. at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:106)
  25. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
  26. at org.apache.catalina.webresources.StandardRoot.startInternal(StandardRoot.java:699)
  27. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
  28. ... 9 more
  29. Caused by: java.lang.IllegalArgumentException: java.util.zip.ZipException: invalid LOC header (bad signature)
  30. at org.apache.catalina.webresources.JarResourceSet.initInternal(JarResourceSet.java:96)
  31. at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
  32. ... 12 more
  33. Caused by: java.util.zip.ZipException: invalid LOC header (bad signature)
  34. at java.util.zip.ZipFile.read(Native Method)
  35. at java.util.zip.ZipFile.access$1400(Unknown Source)
  36. at java.util.zip.ZipFile$ZipFileInputStream.read(Unknown Source)
  37. at java.util.zip.ZipFile$ZipFileInflaterInputStream.fill(Unknown Source)
  38. at java.util.zip.InflaterInputStream.read(Unknown Source)
  39. at sun.misc.IOUtils.readFully(Unknown Source)
  40. at java.util.jar.JarFile.getBytes(Unknown Source)
  41. at java.util.jar.JarFile.getManifestFromReference(Unknown Source)
  42. at java.util.jar.JarFile.getManifest(Unknown Source)
  43. at org.apache.catalina.webresources.JarResourceSet.initInternal(JarResourceSet.java:94)
  44. ... 13 more
  45. 十一月 29, 2016 2:54:19 下午 org.apache.catalina.core.ContainerBase startInternal
  46. 严重: A child container failed during start
  47. java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]
  48. at java.util.concurrent.FutureTask.report(Unknown Source)
  49. at java.util.concurrent.FutureTask.get(Unknown Source)
  50. at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:916)
  51. at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
  52. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
  53. at org.apache.catalina.core.StandardService.startInternal(StandardService.java:439)
  54. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
  55. at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:769)
  56. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
  57. at org.apache.catalina.startup.Catalina.start(Catalina.java:625)
  58. at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  59. at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  60. at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  61. at java.lang.reflect.Method.invoke(Unknown Source)
  62. at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351)
  63. at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485)
  64. Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]
  65. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
  66. at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1408)
  67. at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1398)
  68. at java.util.concurrent.FutureTask.run(Unknown Source)
  69. at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
  70. at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
  71. at java.lang.Thread.run(Unknown Source)
  72. Caused by: org.apache.catalina.LifecycleException: A child container failed during start
  73. at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:924)
  74. at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:871)
  75. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
  76. ... 6 more
  77. 十一月 29, 2016 2:54:19 下午 org.apache.catalina.startup.Catalina start
  78. 严重: The required Server component failed to start so Tomcat is unable to start.
  79. org.apache.catalina.LifecycleException: Failed to start component [StandardServer[8005]]
  80. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
  81. at org.apache.catalina.startup.Catalina.start(Catalina.java:625)
  82. at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  83. at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  84. at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  85. at java.lang.reflect.Method.invoke(Unknown Source)
  86. at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351)
  87. at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485)
  88. Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardService[Catalina]]
  89. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
  90. at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:769)
  91. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
  92. ... 7 more
  93. Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]]
  94. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
  95. at org.apache.catalina.core.StandardService.startInternal(StandardService.java:439)
  96. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
  97. ... 9 more
  98. Caused by: org.apache.catalina.LifecycleException: A child container failed during start
  99. at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:924)
  100. at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
  101. at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
  102. ... 11 more
  103. 十一月 29, 2016 2:54:19 下午 org.apache.coyote.AbstractProtocol pause
  104. 信息: Pausing ProtocolHandler ["http-nio-8080"]
  105. 十一月 29, 2016 2:54:19 下午 org.apache.coyote.AbstractProtocol pause
  106. 信息: Pausing ProtocolHandler ["ajp-nio-8009"]
  107. 十一月 29, 2016 2:54:19 下午 org.apache.catalina.core.StandardService stopInternal
  108. 信息: Stopping service Catalina
  109. 十一月 29, 2016 2:54:19 下午 org.apache.coyote.AbstractProtocol destroy
  110. 信息: Destroying ProtocolHandler ["http-nio-8080"]
  111. 十一月 29, 2016 2:54:19 下午 org.apache.coyote.AbstractProtocol destroy
  112. 严重: Failed to destroy end point associated with ProtocolHandler ["http-nio-8080"]
  113. java.lang.NullPointerException
  114. at org.apache.tomcat.util.net.NioEndpoint.releaseCaches(NioEndpoint.java:305)
  115. at org.apache.tomcat.util.net.NioEndpoint.unbind(NioEndpoint.java:481)
  116. at org.apache.tomcat.util.net.AbstractEndpoint.destroy(AbstractEndpoint.java:823)
  117. at org.apache.coyote.AbstractProtocol.destroy(AbstractProtocol.java:533)
  118. at org.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023)
  119. at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305)
  120. at org.apache.catalina.core.StandardService.destroyInternal(StandardService.java:588)
  121. at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305)
  122. at org.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:859)
  123. at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305)
  124. at org.apache.catalina.startup.Catalina.start(Catalina.java:629)
  125. at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  126. at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  127. at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  128. at java.lang.reflect.Method.invoke(Unknown Source)
  129. at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351)
  130. at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485)
  131. 十一月 29, 2016 2:54:19 下午 org.apache.coyote.AbstractProtocol destroy
  132. 信息: Destroying ProtocolHandler ["ajp-nio-8009"]
  133. 十一月 29, 2016 2:54:19 下午 org.apache.coyote.AbstractProtocol destroy
  134. 严重: Failed to destroy end point associated with ProtocolHandler ["ajp-nio-8009"]
  135. java.lang.NullPointerException
  136. at org.apache.tomcat.util.net.NioEndpoint.releaseCaches(NioEndpoint.java:305)
  137. at org.apache.tomcat.util.net.NioEndpoint.unbind(NioEndpoint.java:481)
  138. at org.apache.tomcat.util.net.AbstractEndpoint.destroy(AbstractEndpoint.java:823)
  139. at org.apache.coyote.AbstractProtocol.destroy(AbstractProtocol.java:533)
  140. at org.apache.catalina.connector.Connector.destroyInternal(Connector.java:1023)
  141. at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305)
  142. at org.apache.catalina.core.StandardService.destroyInternal(StandardService.java:588)
  143. at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305)
  144. at org.apache.catalina.core.StandardServer.destroyInternal(StandardServer.java:859)
  145. at org.apache.catalina.util.LifecycleBase.destroy(LifecycleBase.java:305)
  146. at org.apache.catalina.startup.Catalina.start(Catalina.java:629)
  147. at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  148. at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
  149. at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  150. at java.lang.reflect.Method.invoke(Unknown Source)
  151. at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:351)
  152. at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485)</span>
  153. </span>

原因:

提取错误的关键信息

说明Jar包出现了问题。

那么接下来就要找哪个jar包出现了问题:

方法1、可通过右击项目名 ->  Run as -> Maven test ,这时控制台会报哪个jar包出错。 (也可以打开DOS命令窗口,切换至项目目录,运行mvn test命令,和Eclipse的控制台输出信息一致)

方法2、如果方法1未出现任何错误信息,那么就使用笨办法。打开项目中的pom.xml文件,在自己的Maven本地仓库去查找pom.xml文件中每一个dependency节点所对应的jar包版本。一个一个对比,看看是否都正常下载。

这里,我找到了本地仓库中出现的jar包错误:

解决方法:

既然jar包未下载成功,那么重新下载就行了。如果重新下载还是不能成功,那就在网上下载同版本的拷贝进去。

删除掉该jar包所在目录下的所有文件后,重新运行maven install。

这时,可看到jar包已正常下载。

再次运行项目,右击项目 -> Run as -> Run on server 。可以发现,项目能正常运行了。

运行Maven项目时出现invalid LOC header (bad signature)错误,Tomcat不能正常启动的更多相关文章

  1. 运行Maven项目时出现invalid LOC header (bad signature)

    为Maven小白,今天这问题困扰了我好久,经过多次在网上查询,终于找到了原因.明明一个小问题却耗费很多时间,着实不应该,所以必须记录一下. 报错信息如下:   对话框: 控制台: <span s ...

  2. [转]maven编译时出现读取XXX时出错invalid LOC header (bad signature)

    maven编译时出现读取XXX时出错invalid LOC header (bad signature) 一.发现问题右击pom.xml,run as —> maven install,会看到c ...

  3. maven编译时出现读取XXX时出错invalid LOC header (bad signature)

    问题原因 该包没有下载正确. 解决办法 找到该包的目录,删除该包重新下载即可. 重新下载后用maven test一下,红叉消失.

  4. 解决Maven打包提示:读取C:\Users\Administrator\.m2\repository\ch\qos\logback\logback-classic\1.2.3\logback-classic-1.2.3.jar时出错; invalid LOC header (bad signature)

    1.打包情况 虽然提示读取jar包出错,但是还是能打包成功,在执行打的jar包时会报错,说找不到相关的类. 2.解决方案 从提示的路径可以找到对应的jar包,但为什么会读取错误呢?尝试着双击打开log ...

  5. Maven错误:XXX时出错; invalid LOC header (bad signature)的解决方法

    错误原因是该包没下载成功,比如网络问题等因素. 解决方法:进入本地仓库删除该包,然后再执行打包或部署等操作即可.

  6. groovy-2.4.11.jar时出错; invalid LOC header (bad signature)

    Information:java: Errors occurred while compiling module 'security'Information:javac 1.8.0_131 was u ...

  7. maven 错误:读取 xxx.jar 时出错;invalid LOC header (bad signature) 1 错误

    reqHeader:{Accept=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8, Upgrade-Insecure- ...

  8. maven提示invalid LOC header (bad signature)的解决办法

    今天执行mvn test的时候提示: 错误:读取 /home/subaochen/.m2/repository/org/slf4j/slf4j-api/1.6.1/slf4j-api-1.6.1.ja ...

  9. maven下载的jar文件出现invalid LOC header (bad signature)

    有的时候maven下载了相对应的jar文件,但是某些类无法被引入,在eclipse打开该jar文件,发现相对应的类是invalid LOC header (bad signature),这时把mave ...

随机推荐

  1. 学习flying logic

    之前在知乎上结识的朋友吴笛,他的qq空间里分享了  flying logic的一些用途,我想到可以规划和团队的目标,这点让我感到很兴奋,分享学习这个软件. 学习之前,我应当把软件中的单词学明白.现在就 ...

  2. hashcode相等两个类一定相等吗?equals呢?相反呢?

    hashCode相等,equals也不一定相等, 两个类也不一定相等 equals相同, 说明是同一个对象, 那么hashCode一定相同 哈希表是结合了直接寻址和链式寻址两种方式,所需要的就是将需要 ...

  3. 微信小程序跳转微信小程序新增配置项目 navigateToMiniProgramAppIdList

    每个小程序可跳转的其他小程序数量限制为不超过 10 个 从 2.4.0 版本以及指定日期(具体待定)开始,开发者提交新版小程序代码时,如使用了跳转其他小程序功能,则需要在代码配置中声明将要跳转的小程序 ...

  4. 【转】Vue组件一-父组件传值给子组件

    Vue组件一-父组件传值给子组件 开始 Vue组件是学习Vue框架最比较难的部分,而这部分难点我认为可以分为三个部分学习,即 组件的传值 - 父组件向子组件中传值 事件回馈 - 子组件向父组件发送消息 ...

  5. 【HNOI2018】毒瘤

    [HNOI2018]毒瘤 设\(f_{v,0}\)表示\(v\)的子树中\(v\)不选的方案数,\(f_{v,1}\)表示\(v\)选的方案数. 显然 \[ f_{v,0}=\prod (f_{sn, ...

  6. 设计模式のAdapterPattern(适配器模式)----结构模式

    一.产生背景 这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能.举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器.您将内存卡插入读卡器,再将读卡器插入笔记本,这样就可以通过笔记本 ...

  7. springboot 服务工程,前端服务调用接口报跨域错误

    前后端分离,VUE.JS调用服务接口时,跨域错误.需要服务接口工程设置,如下: @SpringBootApplicationpublic class SpringCloudOpenapiApplica ...

  8. HashMap 1.7

    1.关键属性与内部类 1.1属性 使用拉链法解决hash冲突的hash表,hash表里存了多少个元素.数组有多长以及当什么情况下需要扩容是重要的参数. transient Entry<K,V&g ...

  9. spring boot启动后执行方法

    @Componentpublic class InitProject implements ApplicationRunner { private static final Logger logger ...

  10. day 03 基本数据类型的使用、运算符

    一:基本数据类型的使用 1.为什么数据要区分类型 数据类型指的是变量值的类型,变量值是用来记录事物的状态的,而事物的状态具有不同的类型,不同类型的变量值表示不同类型的状态,所以数据要区分类型. 2.数 ...