繁体   English   中英

Findbugs使用Lombok构建器创建问题

[英]Findbugs creating issues with Lombok builder

我在与龙目岛建设者这个奇怪的问题上打破了我的头脑和时间。

让我们说我们上课了

@builder
class DateTest {
 @Column (name="insert_time")
 private Date curDate;
  }

现在运行findbugs它会抱怨此错误EI_EXPOSE_REP2。 构建器的原因是不使用Date对象的副本。

什么是适当的解决方案? 关键是我不想将date数据类型更改为String只是为了解决方法,我不想压制findbugs错误,因为它实际上不会解决我们的问题。 有人找到了一些适当的解决方案吗?

龙目岛没有办法实现这一目标。 Lombok构建器不会创建副本,也不会构建构造函数或setter。 正确的解决方法是不使用自动生成的构建器,至少不是在类级别。

您可以使用构造函数来解决此问题,而不是为您执行复制:

@Builder
private DateTest createDateTest(Date curDate) {
    …
}

当然,你无法从自动生成的构造函数中获利,但至少你得到了构建器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM