在tomcat上部署play框架

在tomcat上部署play框架,tomcat,playframework,Tomcat,Playframework,我使用play framework 6.2/servlet 2.5生成了war,并将其部署在tomcat 7/8/9上(我尝试了所有版本) 我也遇到了同样的错误: > org.apache.catalina.core.StandardContext.listenerStart Exception lors de l'envoi de l'évènement contexte initialisé (context initialized) à l'instance de classe d

我使用play framework 6.2/servlet 2.5生成了war,并将其部署在tomcat 7/8/9上(我尝试了所有版本) 我也遇到了同样的错误:

> org.apache.catalina.core.StandardContext.listenerStart 
Exception lors de l'envoi de l'évènement contexte initialisé (context initialized) à l'instance de classe d'écoute 
(listener) play.core.server.servlet25.Play2Servlet
 java.lang.NoSuchMethodError: play.api.Mode$.Prod()Lscala/Enumeration$Value;
    at play.core.server.servlet.Play2WarServer$.<init>(Play2Server.scala:40)
    at play.core.server.servlet.Play2WarServer$.<clinit>(Play2Server.scala)
    at play.core.server.servlet.GenericPlay2Servlet.contextInitialized(GenericPlay2Servlet.scala:45)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4811)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5251)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717)
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:940)
    at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1816)
    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:748)
> 
> 16-Aug-2017 16:24:25.327 INFO [localhost-startStop-2] org.apache.catalina.core.ApplicationContext.log PlayServletWrapper 
> contextDestroyed
16-Aug-2017 16:24:25.327 SEVERE [localhost-startStop-2] org.apache.catalina.core.StandardContext.listenerStop 
Exception lors de l'envoi de l'évènement contexte détruit (context destroyed) 
à l'instance de classe d'écoute play.core.server.servlet25.Play2Servlet
 java.lang.NoClassDefFoundError: Could not initialize class play.core.server.servlet.Play2WarServer$
    at play.core.server.servlet.GenericPlay2Servlet.contextDestroyed(GenericPlay2Servlet.scala:51)
    at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4858)
    at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5474)
    at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:224)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:159)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717)
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:940)
    at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1816)
    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:748)
>org.apache.catalina.core.StandardContext.listenerStart
例外情况:初始值(上下文初始化)为类实例
(侦听器)play.core.server.servlet25.Play2Servlet
java.lang.NoSuchMethodError:play.api.Mode$.Prod()Lscala/Enumeration$Value;
在play.core.server.servlet.Play2WarServer$(Play2Server.scala:40)
在play.core.server.servlet.Play2WarServer$(Play2Server.scala)
在play.core.server.servlet.GenericPlay2Servlet.contextInitialized(GenericPlay2Servlet.scala:45)
位于org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4811)
位于org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5251)
位于org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
位于org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725)
位于org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701)
位于org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717)
位于org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:940)
位于org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1816)
位于java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
在java.util.concurrent.FutureTask.run(FutureTask.java:266)处
位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
运行(Thread.java:748)
> 
>2017年8月16日16:24:25.327信息[localhost-startStop-2]org.apache.catalina.core.ApplicationContext.log PlayServletWrapper
>上下文破坏
2017年8月16日16:24:25.327严重[localhost-startStop-2]org.apache.catalina.core.StandardContext.listenerStop
例外情况(上下文已销毁)
a l'instance de classe d'coute play.core.server.servlet25.Play2Servlet
java.lang.NoClassDefFoundError:无法初始化类play.core.server.servlet.Play2WarServer$
在play.core.server.servlet.GenericPlay2Servlet.contextDestroyed(GenericPlay2Servlet.scala:51)
位于org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4858)
位于org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5474)
位于org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:224)
位于org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:159)
位于org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725)
位于org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701)
位于org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717)
位于org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:940)
位于org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1816)
位于java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
在java.util.concurrent.FutureTask.run(FutureTask.java:266)处
位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
运行(Thread.java:748)
我知道play 6.2不兼容,我想尽我所能走得更远。这是终点线吗?我还有希望


有人吗?

我想你的意思是,你正在尝试使用play 2.6。从该链接中的自述文件来看,Play2War插件不支持PlayVersion2.5.x,我相信它也不支持2.6.x。因此,尝试使用Play2.4.x进行测试/开发。如果你坚持使用play2.6.x和当前版本的play2 war插件,我会说这对你来说已经结束了。

我想你的意思是,你正在尝试使用play2.6。从该链接中的自述文件来看,Play2War插件不支持PlayVersion2.5.x,我相信它也不支持2.6.x。因此,尝试使用Play2.4.x进行测试/开发。如果你坚持使用play 2.6.x和当前版本的play 2 war插件,我会说这是你的底线。

我用Java反编译器查找编译类,找到了方法Prod(),所以我真的不明白?我用Java反编译器查找编译类,找到了方法Prod(),所以我真的不明白?