Eclipse: Ignore “not declare static final serialVersionUID” warning

Whenever you write a Java class in Eclipse which implements java.io.Serializable interface, you’ll get this warning:

The serializable class XXXX does not declare a static final serialVersionUID field of type long

eclipse-serialversionuid-warning

Why do we need serialVersionUID?

Whenever we implement java.io.Serializable interface, we explicitly tell JVM that this class can be serialized. Meaning, we might convert object of this class into byte streams and write it into a file or send it to another JVM through network.

Now when Java objects use serialization to save state in files, or as blobs in databases, the potential arises that the version of a class reading the data is different than the version that wrote the data.

Thus the serialVersionUID provides a versioning mechanism to Java class so that the same class format is used in reading (de-serialization) and writing (serialization) of objects.

But in most of the cases, you will not need this field. You will not have more than one versions of class file which creates issues in deserialization. And that’s why most of the time I skip adding a serialVersionUID version number.

How to ignore serialVersionUID warning

In Eclipse, you can permanently mute the serialVersionUID warning by:

1. To ignore warning for specific eclipse project:

  1. Right click on Project, select Properties from context menu (Shortcut: Alt+Enter)
  2. Go to Java Compiler > Errors/Warnings
  3. Under Potential programming problems section, change Serializable class without serialVersionUID: to Ignore
eclipse-serializable-warning-project

Or you may want to ignore this warning at workspace level.

2. To ignore warning at workspace level:

  1. Go to menu Windows > Preferences
  2. Navigate to Java > Compiler > Errors/Warnings
  3. Under Potential programming problems section, change Serializable class without serialVersionUID: to Ignore
eclipse-serializable-workspace-setting
Get our Articles via Email. Enter your email address.

You may also like...

6 Comments

  1. Sandeep Kanabar says:

    Wonderful blog Viral. Keep it up. By d way, a small typo in the above post – Reading[serialization] and writing [de-ser] ..it should be reverse.. reading[de-ser] and writing[serialization].

    • ops.. well caught.. I am currently on vacation.. I will fix this as soon as I get access to my computer.. thanks :)

  2. niyong says:

    Good Trick.

  3. shenne says:

    Many thanks for this. :)

  4. Milena Ribeiro says:

    Thank you! I’m learning Java and this Eclipse warning gave me a minor headache.

  5. yeroke says:

    A lot of thanks!

Leave a Reply

Your email address will not be published. Required fields are marked *