背景:

  最近老大给了一个项目,是个雏。一看实体类就懵逼了,没有getter、setter和构造方法,导致service和controller全报红线,私有属性也没有注释。按规矩,心里先把这位前辈骂10遍,然后一看@author xx。这不是我老大嘛?然后试着启动项目,卧槽,居然能启动,又去查看编译后的实体类一看,各种构造器和getter、setter等等都全部生成好了,又蒙蔽了。Google一查,原来是Lombok这个东西在搞鬼。

  来看一下官网上怎么说的:Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java.Never write another getter or equals method again, with one annotation your class has a fully featured builder, Automate your logging variables, and much more.翻译下来就是:Lombok是一个java库,可以自动插入编辑器并构建工具,为您的java增添色彩。永远不要再写另一个getter或equals方法,使用一个注释,您的类具有一个功能齐全的构建器,自动化您的日志记录变量等等。

  由于项目实体类中使用了@Data @NoArgsConstructor @AllArgsConstructor属于LomBok使用的范畴,所以编译的时候自动生成了一系列实体类需要的方法,虽然没什么错,但是项目报红线,而且代码智能补齐和提示也没有了,这我可忍不了。

首先来介绍一下常用的注解:

@NoArgsConstructor: 自动生成无参数构造函数。

@AllArgsConstructor: 自动生成全参数构造函数。

@Data: 自动为所有字段添加@ToString, @EqualsAndHashCode, @Getter方法,为非final字段添加@Setter,和@RequiredArgsConstructor

更具体的使用方法和解释可以到官网上查找,也可以参考https://blog.csdn.net/maslii/article/details/81582963

怎么解决红线和不能代码提示的问题呢?

IDEA安装Lombok插件

1、Ctrl+Alt+S打开设置选项

2、Ctrl+Alt+S打开设置选项,搜索Annotation Processors,选中Enable annotation processors,启用注释处理器

3、重启编辑器

4、写到这里以上步骤我都做好了,但是还没有测试,不管了,先发布。如果有问题的话我再改,没问题就不改了。

参考:https://www.projectlombok.org/

IDEA添加Lombok插件的更多相关文章

  1. 添加Lombok插件后调用Setter或Getter方法IDEA编译错误

    虽然添加Lombok插件,但是调用Setter或Getter方法IDEA编译错误,主要原因如下 解决办法:

  2. IDEA里面添加lombok插件,编写简略风格Java代码(转)

    文章转自http://blog.csdn.net/hinstenyhisoka/article/details/50468271 在 java平台上,lombok 提供了简单的注解的形式来帮助我们消除 ...

  3. IDEA里面添加lombok插件,编写简略风格Java代码

    在 java平台上,lombok 提供了简单的注解的形式来帮助我们消除一些必须有但看起来很臃肿的代码, 比如属性的get/set,及对象的toString等方法,特别是相对于 POJO; 关于lomb ...

  4. IDE安装Lombok插件提高开发效率

    Lombok官方api:https://projectlombok.org/features/index.html 使用lombok之后,省去了许多没必要的get,set,toString,equal ...

  5. IDEA中Lombok插件的安装与使用

    背景   我们在开发过程中,通常都会定义大量的JavaBean,然后通过IDE去生成其属性的构造器.getter.setter.equals.hashcode.toString方法,当要对某个属性进行 ...

  6. idea 安装 lombok插件

    一,前言 lombok是什么?lombak是一个工具,主要用来简化,减少代码的编写.使代码看起来更清晰,简洁. 而且lombok只是一个工具,不会打包到war中,不会增加任何消耗.只是在编译期中帮助我 ...

  7. LomBok插件--模型类注解

    Data注解,ToString注解都是Lombok提供的注解. Lombok是一个实用的java工具,使用它可以消除java代码的臃肿,Lombok提供一系列的注解,使用这些注解可 以不用定义gett ...

  8. Knife4j添加lombok及注解初探

    一.POM添加 在pom文件里添加包 1 <!-- 添加Lombok插件--> 2 <dependency> 3 <groupId>org.projectlombo ...

  9. 记录一次bug解决过程:eclipse集成lombok插件

    一 总结 eclipse集成插件lombok: 启动Spring Boot项目: sublime全局搜索关键字:ctrl + shift + F JDK8中的lambda表达式使用 二 BUG描述:集 ...

随机推荐

  1. python面向对象基础(二)反射

    1.反射 前言 如何动态输入一个模块名,可以随时访问到导入模块中的方法或者变量? in= input(“请输入你想导入的模块名:”) CC = __import__(in) #這种方式就是通过输入字符 ...

  2. shell小命令

    小括号的用途 cd ..; ls -l (cd ..; ls -l) 如果加了括号,则当前工作目录不发生改变 shell变量类型 环境变量 可以使用 echo  或者env 例如 env|grep 变 ...

  3. Ubuntu下python开发环境搭建

    配置语言 1) 依次点击设置--Region & Language--Manage Installed Languages --install/remove language--chinese ...

  4. 题解 [USACO Mar08] 奶牛跑步

    [USACO Mar08] 奶牛跑步 Description Bessie准备用从牛棚跑到池塘的方法来锻炼. 但是因为她懒,她只准备沿着下坡的路跑到池塘,然后走回牛棚. Bessie也不想跑得太远,所 ...

  5. 2019icpc南京网络赛 A 主席树

    题意 给一个\(n\times n\)的螺旋矩阵,给出其中的\(m\)个点的值分别为各个点上数字的数位之和,给出\(q\)个询问,每次询问从\((x1,y1)\)到\((x2,y2)\)的子矩阵的和. ...

  6. codeforces613E

    Puzzle Lover CodeForces - 613E Oleg Petrov loves crossword puzzles and every Thursday he buys his fa ...

  7. [ubuntu] 外挂硬盘

    1. 查看磁盘信息 fdisk -l 这里我需要对sda进行分区,所以要进到sda中 2. 进到欲分区磁盘中 $ sudo fdisk /dev/sda Welcome to fdisk (util- ...

  8. Selenium 的页面加载以及几种等待的问题

    1. PageLoadStrategy : 当调用driver.get("https://xxxx.xxx.xxx")来访问某页面时,get方法通常会阻塞浏览器直到页面完全加载后才 ...

  9. Keras学习笔记一:修改数据读入方式为本地图片读入

    第一种方法: Keras官方给的图片去噪示例要自动下载mnist数据集并处理,不能修改和加入自己的数据集. from keras.datasets import mnist (x_train, _), ...

  10. Tree-based Model 如何处理categorical variable

    categorical variable 分为 order variale 和 non-order variable,其中order variable直接使用sklearn.preprocess.La ...