Cómo generar un serialVersionUID en IntelliJ IDEA
La serialización en Java ha perdido popularidad desde que aparecieron librerías como Jackson, GSON, y otras. Muchas de estos frameworks y librerías ni siquiera requieren que tus clases implementen la interfaz Serializable
. No obstante, sigue siendo buena idea implementar esta interfaz en las clases de tus modelos. Frameworks como Apache Wicket todavía lo requieren.
Proporcionar el campo serialVersionUID
no es un requisito imprescindible, pero es extremadamente recomendable cuando implementemos la interfaz Serializable
(Java Serialization). Este campo sirve para forzar la comprobación de la compatibilidad entre el objeto deserializado y las clases cargadas.
IntelliJ puede generar este campo por nosotros cuándo una clase implementa la interfaz Serializable
.
¿Cómo generar el campo serialVersionUID con un plugin de IntelliJ?
El marketplace de IntelliJ dispone de varios plugins que ofrecen esta funcionalidad. En mi caso utilizo GenerateSerialVersionUID ya que era el único disponible cuando realmente lo empleaba hace unos cuantos años. Hoy en día hay muchas más alternativas.
Una vez hayas habilitado este plugin, simplemente tienes que presionar Alt+Insert
/Command+n
cuándo el cursor esté situado en el cuerpo de una clase que implemente la interfaz Serializable
. El menú debería de mostrar una opción para generar el campo serialVersionUID
.
¿Cómo generar el campo serialVersionUID con funcionalidades integradas en IntelliJ?
Si no quieres instalar ningún plugin, IntelliJ tiene algunas funcionalidades integradas que puedes habilitar para generar el campo serialVersionUID
. Hay una comprobación/inspección que incluye una acción correctora rápida que podemos aprovechar para ello.
El primer paso es habilitar la inspección en el diálogo de ajustes. Abre el diálogo Settings(Ctrl+Alt+S
) y navega hasta la pestaña Editor | Inspections.
Con la comprobación habilitada, IntelliJ muestra una advertencia cuándo una clase Serializable
no declara un campo serialVersionUID
. Si situamos el cursor sobre la advertencia, IntelliJ puede generar un campo por nosotros. Sólo tenemos que presionar Alt+Enter
y seleccionar la opción Add 'serialVersionUID' field
.