Translate

Mostrando entradas con la etiqueta startup. Mostrar todas las entradas
Mostrando entradas con la etiqueta startup. Mostrar todas las entradas

viernes, 2 de marzo de 2012

Error Tomcat 7 al iniciar: VerifyError: Cannot inherit from final class

Estaba configurando unos de nuestros proyectos con MAVEN y estaba poniendo en le archivo POM todos los JARS que tenía que en la carpeta WEB-INF\lib.

Una vez que termino el proceso arranco el servidor para ver si todo está en orden y me encuentro que aparece el siguiente error que es tan poco descriptivo:

Información: Starting Servlet Engine: Apache Tomcat/7.0.14
java.lang.VerifyError: Cannot inherit from final class
 at java.lang.ClassLoader.defineClass1(Native Method)
 at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
 at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
 at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2818)
 at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1148)
 at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1643)
 at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1521)
 at org.apache.catalina.startup.ContextConfig.checkHandlesTypes(ContextConfig.java:1969)
 at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:1932)
 at org.apache.catalina.startup.ContextConfig.processAnnotationsJar(ContextConfig.java:1826)
 at org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1785)
 at org.apache.catalina.startup.ContextConfig.processAnnotations(ContextConfig.java:1771)
 at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1254)
 at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:881)
 at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:316)
 at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
 at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:89)
 at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5103)
 at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
 at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1033)
 at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:774)
 at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
 at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1033)
 at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:291)
 at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
 at org.apache.catalina.core.StandardService.startInternal(StandardService.java:443)
 at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
 at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:727)
 at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
 at org.apache.catalina.startup.Catalina.start(Catalina.java:620)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:601)
 at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:303)
 at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:431)


Después de googlear un poco veo que el problema puede residir en los JAR que estaba poniendo en el proyecto y voy quitando uno a uno hasta que el entorno arranca correctamente y detecto cual era el problema.

El problema era que he puesto una versión más vieja de un JAR, concretamente spring-data-commons-core-1.1.0.RELEASE, y tendría que ser spring-data-commons-core-1.2.0.RELEASE

Este jar antiguo en combinación con otros y la configuración de Spring ha hecho que Tomcat no sea capaz de arrancar.

Así que si te ocurre este error yo revisaría las librerías jar que tiene tu proyecto.