Grails生成WAR使用代码覆盖插件部署错误

时间:2011-05-09 15:59:36

标签: tomcat deployment grails code-coverage war

我构建了我的grails应用程序的WAR,并尝试将其部署到我的本地tomcat实例(Tomcat 6.0.26)。但是应用程序无法启动,因为这个异常(从日志中复制):

2011-05-09 17:49:31 org.apache.catalina.core.StandardContext listenerStart
SEVERE: Exception sending context initialized event to listener instance of class org.codehaus.groovy.grails.web.context.GrailsContextLoaderListener
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'pluginManager' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.ClassNotFoundException: CodeCoverageGrailsPlugin
    at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
    at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
    at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ClassNotFoundException: CodeCoverageGrailsPlugin
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:316)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:247)
    ... 3 more

这很奇怪,因为生产环境中不应存在代码覆盖。我检查了\WEB-ING\lib目录,其中tomcat解压缩了我的网络应用程序,我没有找到任何与cobertura相关的罐子。知道如何让我的应用程序运行吗?

编辑:

使用grails prod run-war在嵌入式Tomcat实例中运行应用程序会产生同样的问题。

编辑2:

我没有足够好google: code-coverage plugin issue 36

1 个答案:

答案 0 :(得分:1)

问题仅出现在代码覆盖率插件的1.2.2版中。升级到1.2.4版解决了这个问题。