作为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. c/c++叉树的创建与遍历(非递归遍历左右中,不破坏树结构)

    二叉树的创建与遍历(非递归遍历左右中,不破坏树结构) 创建 二叉树的递归3种遍历方式: 1,先中心,再左树,再右树 2,先左树,再中心,再右树 3,先左树,再右树,再中心 二叉树的非递归4种遍历方式: ...

  2. Entity Framework 5.0.0 Function Import 以及 ODP. NET Implicit REF CURSOR Binding使用简介

    源代码 概要: 1,说明如何使用Entity Framework中的function import功能. 2,说明如何使用ODP.NET的隐式REF CURSOR绑定(implicit REF CUR ...

  3. AI学习---数据读取&神经网络

    AI学习---数据读取&神经网络 fa

  4. windows下数据库文件使用脚本同步到linux下的mysql数据库中

    1.背景 windows server 2008 下 每天会有 *.sql数据文件 需要上传到linux 中的mysql数据库中 而运维人员是在 windows server 下使用 xshell 连 ...

  5. Java-Socket实现文件的断点续传

    前段时间因为任务需要本人这个java渣渣开始研究如何用java实现简单的文件断点续传.所谓的文件断点续传,我的理解是文件在传输过程中因为某些原因程序停止运行文件终止传输,下一次重新传输文件的时候还能从 ...

  6. 《Java大学教程》—第22章 多线程程序

    22.2 进程(process):P551时间切片(time-slicing):处理器只是完成了一个任务的一部分工作,然后完成下一个任务的一部分工作,因为处理吕每次完成工作的时间都非常短,因此看起来这 ...

  7. WINDOWS下nginx实现本地支持的图片服务器反向代理

    最近在学习nginx的反向代理和负载均衡的运用时,觉得挺简单的,但是还是想写一篇博客用于记录自己的学习过程. 好的,我们进入正题 Nginx(engine x) 是一个高性能的HTTP和反向代理服务器 ...

  8. 转://oracle Wallet在expdp/impdp中使用场景

    oracle Wallet的使用(即内部加密技术TDE(Transparent Data Encryption )) 1. TDE是Oracle10gR2中推出的一个新功能,使用时要保证Oracle版 ...

  9. ansible的模块使用说明

    参考官方链接: https://docs.ansible.com/ansible/latest/user_guide/intro_adhoc.html#parallelism-and-shell-co ...

  10. 1043. 输出PATest(20)

    1043. 输出PATest(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 给定一个长度不超过10000 ...