Translate

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.


No hay comentarios:

Publicar un comentario en la entrada