Использовать serialVersionUID или подавлять предупреждения? - PullRequest
66 голосов
/ 29 сентября 2008

Я хочу создать класс, который, например, расширяет HttpServlet? Мой компилятор предупреждает меня, что мой класс должен иметь serialVersionUID. Если я знаю, что этот объект никогда не будет сериализован, я должен определить его или добавить аннотацию для подавления этих предупреждений?

Что бы вы сделали и почему?

Ответы [ 12 ]

2 голосов
/ 29 сентября 2008

Пусть Eclipse сгенерирует ID. Быстро и просто. Предупреждения не следует игнорировать. Также избавит вас от многих проблем, если вы когда-нибудь дойдете до точки, где объект / должен / будет сериализован.

1 голос
/ 15 декабря 2015

Если вы знаете, что ваши приложения никогда не сериализуют вещи, отключите предупреждение для всего приложения. Это можно сделать с помощью аргументов командной строки javac:

javac -Xlint -Xlint:-serial *******

Таким образом, у вас будут все предупреждения, кроме «серийного». IDE и инструменты для сборки, такие как Maven / SBT / Gradle, прекрасно работают с этим.

...