为什么@Data和@Builder不能一起工作

Mel*_*ius 2 java builder lombok

我有这个简单的课程

public class ErrorDetails {
    private String param = null;
    private String moreInfo = null;
    private String reason = null;
     ...
}
Run Code Online (Sandbox Code Playgroud)

重构后,我添加了@Data@Builder,但所有实例化都不再起作用

ErrorDetails errorDetails = new ErrorDetails();
Run Code Online (Sandbox Code Playgroud)

“ErrorDetails(java.lang.String, java.lang.String, java.lang.String)”在“com.nordea.openbanking. payments.common.ndf.client.model.error.ErrorDetails”中未公开。无法从外部包访问

如果我删除了@Builder,那么它会正常工作,为什么我不能一起使用@Data和?@Builder

use*_*900 5

龙目岛工作@Builder 必备 @AllArgsConstructor

还应该添加@AllArgsConstructor

在幕后,它使用所有字段的构造函数构建所有字段

应用于@Builder类就像添加@AllArgsConstructor(access = AccessLevel.PACKAGE)到类并将@Builder注释应用于此 all-args-构造函数一样。仅当您自己没有编写任何显式构造函数时,这才有效。