项目无法启动,报错如下。
警告: A docBase D:\Tomcat8.5\wtpwebapps\***inside the host appBase has been specified, and will be ignored
十二月 30, 2020 8:42:43 上午 org.apache.catalina.startup.SetContextPropertiesRule begin
警告: [SetContextPropertiesRule]{Context} Setting property 'source' to 'org.eclipse.jst.jee.server:***' did not find a matching property.
十二月 30, 2020 8:42:43 上午 org.apache.catalina.core.ContainerBase addChildInternal
严重: ContainerBase.addChild: start:
org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/***]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:167)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:596)
at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1805)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
一个困扰我一整天的问题。重装了Java,换了几个tomcat。都不行。项目在同事电脑上运行没问题。只有我的出错了。这是有史以来遇到最坑的问题。
问题原因:
请教了几个同事,排查原因方面最终将问题集中在了maven与jar包。
处理经过:
最开始我们使用Run As-->maven install将所有子工程逐个打包,查看缺少的包。结果还真有缺包的,其中有一个包同事说是他个人花钱买的,maven公共库没有,忘了跟我说了。一万个“我艹!”……
后来加上了那个“花钱包”。结果还是不行啊。已经第二天了,简直要崩溃啊。
有一位很够意思的哥们儿帮我个大忙。将我发布的jar包和他本地发布的jar包逐个对比。最终,一个小细节。两边的poi-ooxml包文件大小不同,他说,版本号相同,为什么大小不同呢?原来,他的maven中央库是默认库,
我之前为了下载快一点用了阿里云的maven库,poi包的版本号相同,内容确不同。最后,还原了默认库。重新maven update,搞定。
总结:
项目启动失败,却没有明显的故障提示。排查jar包很重要。还有,maven库不要轻易换来换去。不是一家东西,难免有疏忽。一定要统一团队的maven库来源。
自从解决了这个问题,喝水我都不塞牙缝了。-.-