Jack Fiallos Blog (AkKa Erling) Vida, Curiosidad y Proyectos

NoClassDefFoundError o Bad version number in .class (Error al actualizar)







No Gravatar

Problemas actualizando java en linux

Problemas actualizando java en linux

Recientemente acabo de actualizar a la versión de  java en servidor linux y algunas de las aplicaciones que había desarrollado con mis compañeros dejaron de funcionar sin motivo aparente, mostrandome mensajes como NoClassDefFoundError o Bad version number in .class, pero sucede que al cambiar la versión de java es requerido volver a compilar la aplicación. Por si esto no funciona que fue lo que ocurrió en mi caso será necesario seguir una serie de pasos para verificar la versión que se esta utilizando y actualizar archivos de configuración de java.. Empecemos…

Primero lo primero y vamos a ver que versión de java se ha instalado y se esta utilizando

$ java -version
 
java version "1.6.0_16"
Java(TM) SE Runtime Environment (build 1.6.0_16-b01)
Java HotSpot(TM) Client VM (build 14.2-b01, mixed mode, sharing)

Para mi caso se actualizo java de la version 1.5 a la version 1.6, ahora lo siguiente era ver si la configuración de java en uso era la correcta, el siguiente comando muestra una lista de las versiones instaladas.

$ sudo update-alternatives --config java
 
Hay 2 alternativas que proveen 'java'.
 
Seleccion     Alternativa
-----------------------------------------------
*+     1    /usr/lib/jvm/java-6-sun/jre/bin/java
       2    /usr/lib/jvm/java-1.5.0-sun/jre/bin/java

Mmm.. no encontraba nada malo hasta el momento.. entonces el siguiente paso y último recurso era ver que máquina virtual se estaba utilizando para la ejecución de las aplicaciones..

$ cat /etc/jvm
 
/usr/lib/jvm/java-gcj
/usr/lib/jvm/ia32-java-1.5.0-sun
/usr/lib/jvm/java-1.5.0-sun
/usr

Y ahi estaba el error.. la tercera línea de la respuesta a mi comando dice que aun se continua utilizando la versión 1.5 de java.. a lo cual edité el archivo y escribi lo siguiente

$ sudo emacs /etc/jvm
 
/usr/lib/jvm/java-gcj
/usr/lib/jvm/ia32-java-1.5.0-sun
# la siguiente linea es la importante
/usr/lib/jvm/java-6-sun-1.6.0.16
/usr

Luego de eso, claro!! tuve que volver a compilar mis aplicaciones, algunas librerias y extensiones tuve que copiarlas a :

/usr/lib/jvm/java-6-sun-1.6.0.16/jre/lib/i386
/usr/lib/jvm/java-6-sun-1.6.0.16/jre/lib/ext

Y con eso todo volvió a la normalidad..

About the author

Erling Fiallos wrote 296 articles on this blog.

Profesional en el Desarrollado de aplicaciones web, usuario de linux, fanático de la tecnología. Arquitecto de interfaces apasionado uso de los estándares web Usabilidad/Accesibilidad.. En el camino he aprendido mucho sobre diseño y me dedico a mejorar las aplicaciones pensando en que toda la web debe de ser accesible para todas las personas. Parte activa en el equipo de desarrollo y consultoría de Qbit Mexhico.

There are currently no comments highlighted.
  • Facebook
  • Twitter
  • Delicious
  • Digg
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

Entradas Similares:

  1. Tomcat eclipse plugin en linux
  2. Specified VM install not found, errorcillo jugueton
  3. Meme: Qué software uso en Ubuntu ?
  4. WM61 version final (Ingles)
  5. Named Pipes Provider, error: 40 – Could not open a connection to SQL Server

Leave a Reply