AI智能
改变未来

Android工程中使用Lombok(附带解决Lombok和Room结合使用出现:error: Cannot find getter for field. 大坑!)


Lombok概述

Lombok是一个通过在程序中注入标记(Annotation),帮助程序员减少代码输入、提高工作效率的开源项目。有了Lombok,如常用的Getter/Setter和toString方法等,都利用标记可以避免输入。

安装Lombok插件

File -> Settings -> Plugins -> Browse Repositories -> 在搜索框中输入Lombok -> 安装Lombok -> 重启Android Studio

依赖引入

dependencies {
compileOnly ‘org.projectlombok:lombok:1.18.8’
annotationProcessor ‘org.projectlombok:lombok:1.18.8’
}

重启

重新启动AndroidStudio后可正常在Android工程中使用lombok

常用注解

@Data 注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法@Setter :注解在属性上;为属性提供 setting 方法@Getter :注解在属性上;为属性提供 getting 方法@Log4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象@NoArgsConstructor :注解在类上;为类提供一个无参的构造方法@AllArgsConstructor :注解在类上;为类提供一个全参的构造方法@Cleanup : 可以关闭流@Builder : 被注解的类加个构造者模式@Synchronized : 加个同步锁@SneakyThrows : 等同于try/catch 捕获异常@NonNull : 如果给参数加个这个注解 参数为null会抛出空指针异常@Value : 注解和@Data类似,区别在于它会把所有成员变量默认定义为private final修饰,并且不会生成set方法。@toString:注解在类上;为类提供toString方法(可以添加排除和依赖);

官方文档.

解决Lombok和Room结合使用出现:error: Cannot find getter for field

修改build.gradle文件
将lombok依赖引入先于Room

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » Android工程中使用Lombok(附带解决Lombok和Room结合使用出现:error: Cannot find getter for field. 大坑!)