java - 龙目岛的@SuperBuilder - 错误java:找不到符号
问题描述
我已经将 Lombok 与 IntelliJ 一起使用了一段时间。我已经安装了最新的 (v. 0.28) Lombok 插件,启用了注释处理并在 pom.xml 中添加了 Lombok 依赖项 (v. 1.18.10)。直到今天,当我想实现实验性的@SuperBuilder时,一切都运行良好。
我有一个简单的层次结构:
@SuperBuilder
public class User {
private String a;
}
@SuperBuilder
public class Employee extends User {
private int b;
}
@SuperBuilder
public class Employer extends User {
private double c;
}
我想在孩子的构建器中设置父类的字段,例如:
Employee.builder().a("Positive").b(1).build();
Employer.builder().a("Negative").c(-2.1).build();
乍一看,这一切似乎都有效 - 当文件打开并且构建器很好时,没有显示错误。但是,在mvn clean compile之后,我在每个 @SuperBuilder 行(即在这 3 个类中的每一个中)都得到以下结果:
Error:(20) java: cannot find symbol
我在这里想念什么?我尝试更新 Lombok 插件版本并重新安装它,但没有任何成功。
解决方案
我遇到了同样的问题,添加 @SuperBuilder
到所有“基”类中解决了这个问题。
前:
abstract class Parent {
...
}
@SuperBuilder
class Child extends Parent {
...
}
后:
@SuperBuilder // <- addded
abstract class Parent {
...
}
@SuperBuilder
class Child extends Parent {
...
}
推荐阅读
- ios - 用于响应式图像视图框架的 UIImageView 内容模式
- excel - 加载项中的 Excel 宏不可见
- python - 在 Windows 平台中使用 Python 在监控模式下启用 Wifi
- javascript - 让 webpack 处理导入库中的服务工作者
- r - 数据框搜索 == 未找到所有符合条件的条件
- reactjs - 带有 ReactJS 的 VsCode:在使用“className”时是否可以自动补全双引号?
- docker - 如何在supervisord中设置环境变量
- python - 在 EOF 之后读取 Numpy fromfile
- devops - 使用 systemd 每秒准确运行计时器
- c - 是否有返回第二个、第三个等实例的 C 函数会出现 int 值?