java - 枚举中的龙目岛:@Setter 在枚举中给出编译错误
问题描述
错误:@Setter 仅在类或字段上受支持。pom.xml 中的龙目岛版本 = 1.18.12
想让这个 ErrorMessages 对任何类型的错误都是通用的。需要通过 lombok 创建 getter 和 setter 并访问:ErrorMessages.MISSING_REQUIRED_FIELD.getErrorMessage()
import lombok.Getter;
import lombok.Setter;
@Setter
@Getter
public enum ErrorMessages {
MISSING_REQUIRED_FIELD("Missing required field. Please check documentation for required fields."),
RECORD_ALREADY_EXISTS("Record already exists");
private String errorMessage;
// public String getErrorMessage() {
// return errorMessage;
// }
//
// public void setErrorMessage(String errorMessage) {
// this.errorMessage = errorMessage;
// }
ErrorMessages(String errorMessage) {
this.errorMessage = errorMessage;
}
}
解决方案
如果您不想更改数据,这应该是 a class
,而不是a ,enum
否则请参阅 Joachim Sauer 评论。
另请注意,构造函数也需要公开
@Setter
@Getter
public class ErrorMessages {
private String errorMessage;
public ErrorMessages(String errorMessage) {
this.errorMessage = errorMessage;}
}
推荐阅读
- php - 在PHP中将变量分配给自身的效果是什么?
- c# - 跨 ASP.NET 和 ASP.NET Core 站点共享 OWIN Cookie
- c# - 使用 Aspose.Cells for C# 更改条形图轴刻度
- mysqli - SQL ORDER BY 函数
- intellij-idea - 在不影响 vue 模板的情况下,使用 intellij 从 HTML 中的标签周围更改“小于”和“大于”的颜色
- python - 事件编码键盘输入
- python - 在后端实现 facebook 类型更简单的“喜欢”功能
- r - R:当两个事件(列)都为真时,参考其中一个来决定值
- rstudio - 删除 R studio 中的第一行错误的维度数不正确
- java - 在我用 Java 杀死它的持有者后,一个对象还活着吗?