如何在春季application.properties中设置lombok.equalsAndHashCode.callSuper =调用?

时间:2018-09-07 09:44:31

标签: java spring lombok

我在Hibernate实体上使用Lombok,并且具有继承性:

@MappedSuperclass
@Data
public class BaseEntity {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    private Boolean enabled;
    public BaseEntity() {
        enabled = true; 
    }
}

@Entity
@Data
public class Event extends BaseEntity {
    private String name;
    private LocalDateTime start;
    private LocalDateTime end;
    private Boolean isTaxable;
}

Eclipse对子@Data发出警告:

  

生成equals / hashCode实现,但不调用   父类,即使此类不扩展java.lang.Object。   如果这是故意的,请添加'@EqualsAndHashCode(callSuper = false)'   您的类型。

此处Warning equals/hashCode on @Data annotation lombok with inheritance

我可以使用

lombok.equalsAndHashCode.callSuper = call

如何在spring application.properties文件中使用此属性?我是否应该在application.properties附近创建lombok.config文件,并将其放在那里?

我试图将其添加到application.properties

lombok.equalsAndHashCode.callSuper = call

但是Eclipse表示此属性未知,并且子类@Data注释上的警告仍然存在。

1 个答案:

答案 0 :(得分:3)

由于lombok是注释处理器,因此它会在编译期间完成其工作。因此,在构建项目时,必须在lombok中进行配置。

您必须将所有lombok配置选项放入名为IFS='/' read -ra list_l1 <<<$1 for i in "${!list_l1[@]}"; do list_l2[$i]="${list_l1[$i]//,/$' '}" # This section is a pseudocode of what I would like to do: get 'type' from first part (before '-' as in example above) if type == 'a': pass the with parameters after '-' to another .sh script, discarding the separators '-', ',' elif type == 'b': pass the with parameters after '-' to another .sh script, discarding the separators '-', ',' elif type == 'c': pass the with parameters after '-' to another .sh script, discarding the separators '-', ',' elif type == 'd': pass the with parameters after '-' to another .sh script, discarding the separators '-', ',' # This section is a pseudocode of what I would like to do: done 的文件中。该文件通常放置在项目的根文件夹中。有关详细信息,请参见lombok documentation。 (请注意,此文件不会包含在构建的工件中,例如JAR文件。)

您无法在运行时配置lombok(例如,使用lombok.config)。