@AllArgsConstructor没有在Enum上生成构造函数

时间:2018-12-05 12:18:21

标签: java enums lombok

我正在尝试为另一个班级定义的州定义一个枚举。

这是我的代码

import lombok.AllArgsConstructor;

@AllArgsConstructor
public enum State {
    PUBLISHED("published"),
    UNPUBLISHED("unpublished");

    private String value;

    public String value() {
        return value;
    }
}

但是我一直收到此错误:

  

[错误] ... / State.java:[12,14]枚举状态中的构造方法状态不能   适用于给定的类型;   需要[ERROR]:没有参数   发现[错误]:java.lang.String   [错误]原因:实际参数和形式参数列表的长度不同

@AllArgsConstructor有问题吗?

2 个答案:

答案 0 :(得分:1)

启用注释处理应该可以解决此问题。 (首选项->构建,执行,部署)->编译器->注释处理器

答案 1 :(得分:1)

这样不是更好吗?

@RequiredArgsConstructor
@Getter
public enum State {
    PUBLISHED("published"),
    UNPUBLISHED("unpublished");
    private final String value;
}