首页 文章

无法部署到运行Tomcat的服务器

提问于
浏览
0

我正在尝试将Spring应用程序部署到运行Apache Tomcat的服务器上 . 但是,我收到此错误:

SEVERE:ContainerBase.addChild:start:... org.apache.catalina.LifecycleException:无法在org.apache.catalina.util.LifecycleBase中启动组件[StandardEngine [Catalina] .StandardHost [localhost] .StandardContext [/ RuralIvrs]] . 在Org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)的org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)的org开始(LifecycleBase.java:154) . apache.catalina.core.StandardHost.addChild(StandardHost.java:633)atg.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:976)at org.apache.catalina.startup.HostConfig $ DeployWar.run( HostConfig.java:1653)java.util.concurrent.Executor上的java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:511)java.util.concurrent.ThreadPoolExecutor上的java.util.concurrent.FutureTask.run(FutureTask.java:266) .runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)at java.lang.Thread.run(Thread.java:745)引起: java.lang.NoSuchMethodError:javax.servlet.ServletContext.getVirtualServerName()Ljava / lang / String;在org.apache.tomcat.websocket.server.WsServerContainer . (WsServerContainer.java:147)org.apache.tomcat.websocket.server.WsSci.init(WsSci.java:131)org.apache.tomcat.websocket . 服务器.WsSci.onStartup(WsSci.java:47)org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5423)org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 10更多2016年1月21日下午12:16:42 org.apache.catalina.startup.HostConfig deployWAR ...严重:部署Web应用程序存档时出错/home/ruralivrs/Ruralict/apache-tomcat-7.0.42/webapps/ RuralIvrs.war java.lang.IllegalStateException:ContainerBase.addChild:start:org.apache.catalina.LifecycleException:无法在org.apache.catalina启动组件[StandardEngine [Catalina] .StandardHost [localhost] .StandardContext [/ RuralIvrs]] .core.ContainerBase.addChildInternal(ContainerBase.java:904)org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)org.apache.catalina.core.StandardHost.addChild(S) tandardHost.java:633)atg.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:976)atg.apache.catalina.startup.HostConfig $ DeployWar.run(HostConfig.java:1653)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 at Java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)at java.lang.Thread.run(Thread.java:745)

搜索几个小时后我找不到解决方案 . 由于我对此很陌生,所以任何帮助都将不胜感激 . 谢谢!

1 回答

  • 1

    您可以在this blog post中找到类似的问题 .

    解决方案可能就像在Maven项目的pom.xml文件中添加 tomcat.version 属性一样简单

    <properties>
        <tomcat.version>7.0.67</tomcat.version>
    </properties>
    

    原因在embedded-servlet-containers的Spring Boot文档中进行了解释 .
    Spring Boot默认为 Tomcat 8 ,因此您需要告诉Spring Boot您的目标是 Tomcat 7 .

相关问题