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

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..
There are currently no comments highlighted.