带有可序列化列表的 SonarQube catch 22

SonarQube catch 22 with serializable lists

起初我有一个 class 的思路:

public class MyClass implements Serializable {

    private List<Role> roles;

}

SonarQube 指出 List 是可序列化 class 的成员,它本身是不可序列化的。很公平,我将切换到 List 的可序列化实现,例如 ArrayList

public class MyClass implements Serializable {

    private ArrayList<Role> roles;

}

此时 SonarQube 很不高兴,因为 "roles should use an interface such as 'List' rather than an implementation like 'ArrayList'" 这让我回到原来的位置。

有没有办法跳出这个循环?

看来你的问题两天前就解决了。

https://jira.sonarsource.com/browse/SONARJAVA-808