Artículos
Java

java.lang.UnsupportedClassVersionError

28/Ene/2007

Hará unos días me ha tocado modificar un código Java de hace unos años. Cuando uno todavía era programador (ahora la programación es un hobby para mí). La cuestión es que edité el código sobre Eclipse, lo modifiqué y recompile. Todo ello con Java SE 5. Hasta aquí ningún problema.

Lo que no podía imaginar es que la máquina virtual en que se estaba ejecutando en producción era todavía un Java SE 1.3 (o alguno de sus derivados). Es por ello que cuando mi código llegó a ejecutarse devolvió una java.lang.UnsupportedClassVersionError.

Además la información adicional que nos devolvió fue «Unsupported major.minor version 49.0».

Y es que desde Java SE 1.2 se dispone de la excepción java.lang.UnsupportedClassVersionError (puedes leer la información del API sobre java.lang.UnsupportedClassVersionError). La cual nos avisa que la JVM intenta leer un fichero class cuya version (mayor o minor) no está soportada.

java.lang.UnsupportedClassVersionError, hemos compilado con una versión de Java mayor a la versión que esta ejecutando en la JVM.

Si vemos la información adicional (la que me devolvió) lo que nos dice es que no se soporta código compilado con la máquina virtual 49.0, la cual corresponde con Java SE 5, el código 48.0 correspondía a Java SE 1.4,…

Si quieres saber que versión de máquina virtual estás ejecutando puede poner lo siguiente en la línea de comandos:

java -version

Vídeos sobre Java

Disfruta también de nuestros artículos sobre Java en formato vídeo. Aprovecha y suscribete a nuestro canal.

Test Java

¿Te atreves a probar tus habilidades y conocimiento en Java con nuestro test?

Test Java
Suscribir
Notificar de
guest
25 Comentarios
Recientes
Anteriores Más votados
Opiniones integradas
Ver todos los comentarios