Idea 2019.2 安装lombok插件解决失效问题
在使用Idea 2019.2时,安装lombok插件可能会遇到失效问题,这个问题的解决方法将在本文中详细介绍。lombok是一个Java库,提供了使用注解的形式帮助简化消除Java代码。在编写Java代码时,通过使用对应的注解,可以简化开发,同时,在编译源码的时候,lombok又自动生成对应的代码。因此,使用lombok插件不会影响程序的运行效率。
lombok的常用注解有:
@Data:注解在类上;包含了@ToString,@EqualsAndHashCode,@Getter / @Setter和@RequiredArgsConstructor的功能,提供类所有属性的 getter 和 setter 方法,此外还提供了equals、canEqual、hashCode、toString 方法。
@Setter:注解在属性上;为属性提供 setter 方法。
@Getter:注解在属性上;为属性提供 getter 方法。默认生成的方法是public的,如果要修改方法修饰符可以设置AccessLevel的值,例如:@Getter(access = AccessLevel.PROTECTED)。
@ToString:注解在类上;生成toString()方法,默认情况下,它会按顺序(以逗号分隔)打印你的类名称以及每个字段。可以这样设置不包含哪些字段@ToString(exclude = "id") / @ToString(exclude = {"id","name"})。
@EqualsAndHashCode:注解在类上;生成hashCode()和equals()方法,默认情况下,它将使用所有非静态,非transient字段。但可以通过在可选的exclude参数中来排除更多字段。
@NonNull: 注解在属性上;标识属性是不能为空,为空则抛出异常。
@Slf4j :注解在类上;根据用户实际使用的日志框架生成log日志对象。
@Log4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象
@NoArgsConstructor:注解在类上;为类提供一个无参的构造方法。
@AllArgsConstructor:注解在类上;为类提供一个全参的构造方法。
@RequiredArgsConstructor:注解在类上;会生成构造方法(可能带参数也可能不带参数),如果带参数,这参数只能是以final修饰的未经初始化的字段,或者是以@NonNull注解的未经初始化的字段。
安装和配置lombok的方法有多种:
1、引入依赖包,例如使用maven引入依赖:<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId></dependency>
2、安装插件,例如在Idea中安装lombok插件,按键 Alt+Ctrl+S,打开Settings对话框,安装lombok插件。
3、设置Enable annotation processing,idea升级到最新的2019.2版本后,不必向网上很多人说的那样解决不兼容问题,如上配置即可正常使用。
lombok是一个非常实用的Java库,它可以帮助我们简化Java代码的编写,并且提高开发效率。但是,在使用lombok插件时可能会遇到失效问题,这个问题可以通过上述方法解决。