Serializable non-static inner class without 'serialVersionUID'
Reports non-static inner classes that implement java.io.Serializable
, but do not define a serialVersionUID
field.
Without a serialVersionUID
field, any change to the class will make previously serialized versions unreadable. It is strongly recommended that Serializable
non-static inner classes have a serialVersionUID
field, otherwise the default serialization algorithm may result in serialized versions being incompatible between compilers due to differences in synthetic accessor methods.
A quick-fix is suggested to add the missing serialVersionUID
field.
Example:
After the quick-fix is applied:
Locating this inspection
- By ID
Can be used to locate inspection in e.g. Qodana configuration files, where you can quickly enable or disable it, or adjust its settings.
-serial- Via Settings dialog
Path to the inspection settings via IntelliJ Platform IDE Settings dialog, when you need to adjust inspection settings directly from your IDE.
Use the following options to configure the inspection:
List classes whose inheritors should not be reported by this inspection. This is meant for classes that inherit
Serializable
from a superclass but are not intended for serialization.Whether to ignore
Serializable
anonymous classes.
Inspection options
Here you can find the description of settings available for the Serializable non-static inner class without 'serialVersionUID' inspection, and the reference of their default values.
- Ignore subclasses of
[java.awt.Component]
- Ignore anonymous classes
Not selected
Inspection Details | |
---|---|
By default bundled with: | |
Can be installed with plugin: | Java, 242.22892 |