java如何使lombok注释真正适用于getter和setter
我正在尝试使用lombok getter和setter注释。 据我所知,带注释的代码是在运行时生成的,而不是在编译时生成的,那么如何利用自动生成的getter和setter来编写代码呢
例如,我有一个这样的班
@lombok.Getters
@lombok.Setters
public class MyLombokTesting {
private String userName;
}
但是,如果在编写代码时没有生成这些注释,那么这些注释又有什么用处呢
现在我想做这样的事情
MyLombokTesting myLombokTesting = new MyLombokTesting();
String username = myLombokTesting.getUserName();
or myLombokTesting.setUserName("some username");
但是我不能做这些,因为在编写代码时,eclipse中没有为我生成setter和getter
显然,我可以用一个单参数构造函数来设置用户名,但是getter呢
# 1 楼答案
首先,Lombok确实运行编译时来动态更改生成的类文件
可能,在Eclipse中没有正确安装lombok。请参阅this answer关于Eclipse中lombok安装问题
此外,注释的运行时处理并不是它们的唯一用途。Java5已经附带了注释处理工具apt,因为Java6注释可以由标准编译器(javac)处理。注释可以生成类文件、源文件或其他资源文件
披露:我是Project Lombok开发者之一
# 2 楼答案
我使用EclipseIDE。在pom中添加lombok库之前,我必须在我的计算机中安装lombok。xml
第1步: -在https://projectlombok.org/download下载lombok -运行命令java-jar -重新启动IDE -完成
第二步: -在pom中添加龙眼。xml文件
# 3 楼答案
确保在添加Lombok JAR和插件后重新启动Eclipse/Intellij或您正在使用的任何IDE