一尘不染

布尔字段上的Findbugs错误SE_BAD_FIELD

jenkins

我们将Findbugs配置为通过Maven在我们的Jenkins上运行。

除其他外,它在以下代码行上抱怨SE_BAD_FIELD:

private boolean logged = false;

此错误说明

Se:可序列化类(SE_BAD_FIELD)中的非瞬态不可序列化实例字段

该Serializable类定义了一个非基本实例字段,该实例字段既不是临时的,Serializable的也不是java.lang.Object,并且似乎没有实现Externalizable接口或readObject()和writeObject()方法。如果不可序列化的对象存储在此字段中,则不会正确反序列化此类的对象。

但是boolean是原始的吗?那么为什么要抱怨呢?还是这是某种Findbugs,Maven或Jenkins Bug?


阅读 1303

收藏
2020-07-25

共1个答案

一尘不染

我注意到,FindBugs有时报告错误的SE_BAD_FIELD行号。因此,您可能需要检查其他字段的可串行性。(我使用FB 1.3.9。)。

2020-07-25