grails - 在 CloudFoundry 上启动 Grails 应用程序时为 "state is undetermined"

标签 grails cloud-foundry

我有一个 Grails 应用程序已经在 CloudFoundry 上运行了几个月。我将应用程序从 Grails 2.0.4 更新到 2.1.0,还更新了一些我一直在使用的插件。

现在,当我将应用程序推送到 CloudFoundry 并开始时,我收到错误:

'appname' 状态未定,可用信息不足。

tomcat Catalina 日志显示下面的 NoClassDefFoundError。

我读过有关 Ivy cache 的问题但还没有调查过。我已将 vmc 更新到最新版本 (0.3.18)。

SEVERE: Error deploying web application directory ROOT
java.lang.NoClassDefFoundError: org/apache/tomcat/PeriodicEventListener
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2818)
    at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1159)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1647)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1128)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1026)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4421)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4734)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
    at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1079)
    at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1002)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:506)
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1065)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
    at org.apache.catalina.core.StandardService.start(StandardService.java:525)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: java.lang.ClassNotFoundException: org.apache.tomcat.PeriodicEventListener
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
    ... 34 more

最佳答案

我刚从 Grails 1.3.7 迁移到 2.1.1 时遇到了这个问题。

我通过解压 WAR 文件、删除所有 tomcat-*.jar 文件(有几个 tomcat 嵌入的 jar)然后重新启动 Tomcat 来修复它。

我正在运行 Tomcat 6,我想知道这是否是问题所在?不管怎样,我的应用程序现在可以正常工作了——尽管这不是最好的安装过程!

关于grails - 在 CloudFoundry 上启动 Grails 应用程序时为 "state is undetermined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12125692/

相关文章:

eclipse - 如何使用STS Eclipse将下载的插件添加到Grails项目中

grails - 完全覆盖或使用前缀覆盖 Grails 脚手架 URL

java - Spring 执行器 : Error configuring CloudFoundryActuator with multiple custom RestTemplateBuilder beans

java - Bluemix 和 Java Server Faces

cloud-foundry - 当我看到对 `?/0` 命令的 `cf apps` 响应时,我的 Bluemix CF 应用程序是否正在运行?

amazon-web-services - PCF(Pivotal Cloud Foundry)与 AWS(亚马逊网络服务)有何不同

angularjs - Angular html5mode刷新的Grails UrlMappings

list - Grails:有没有办法检索列表中对象的 _idx 属性?

java - 在 Cloud Foundry 上的 docker 中启用 HTTPS 来运行 Spring Boot 应用程序

grails - Grails具有所有权的对象关系-为什么?