日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

import lombok 报错_Android上使用Lombok和set、get方法告别

發(fā)布時間:2023/12/31 Android 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 import lombok 报错_Android上使用Lombok和set、get方法告别 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、前言

在項目中使用Lombok可以減少很多重復(fù)代碼的書寫。比如說getter/setter/toString等方法的編寫。比如看下圖我寫的代碼,一個@Data注解搞定,徹底拋棄set get方法。

import java.io.Serializable;

import lombok.Data;

@Data

public class LoginVo implements Serializable{

private String password;

private String phone;

}

本文的重點是講解如何在AndroidStudio中集成Lombok,因為這個玩意我也是從后臺的哥們那里get到的,后臺開發(fā)工具用的是IDEA,依賴庫用的是Maven,我們知道Android中開發(fā)工具用的是AndroidStudio,依賴庫咱們用的是Gradle。集成方式還是有蠻大區(qū)別的。

二、Lombok集成到AndroidStudio

1、配置lombok.config文件

項目根目錄下面新建配置文件 lombok.config,同時填上對應(yīng)的配置項(lombok.anyConstructor.suppressConstructorProperties=true),Java項目不需要,Android和Java還是有點區(qū)別的,不配置有的注解使用不了,編譯不過。

image.png

2、引入依賴庫

provided "org.projectlombok:lombok:1.16.18"

compile 'org.glassfish:javax.annotation:10.0-b28'

image.png

3、安裝Lombok Plugin插件

下圖我已經(jīng)安裝好了插件了,具體怎么安裝我就不多說了,直接搜Lombok就可以裝了。

image.png

4、使用Lombok

比如我在類的上面加一個@Data,就不用再寫set get方法了

package com.jilian.mydemo.common.vo;

import java.io.Serializable;

import lombok.Data;

@Data

public class LoginVo implements Serializable{

private String password;

private String phone;

}

而且我還能正常使用set get方法

/**

* 登錄

*

* @param phone

* @param pwd

*/

public void login(String phone, String pwd) {

LoginVo vo = new LoginVo();

vo.setPassword(pwd);

vo.setPhone(phone);

loginliveData = getRepository(UserRepository.class).login(vo);

}

其實set get方法是有的,我們看下圖。

image.png

三、關(guān)于報錯

我的是AndroidSudio3.2.1,在使用 Lombok的時候報如下錯誤:

Annotation processors must be explicitly declared now.

解決方案:

android {

defaultConfig {

//在下面添加這句話,然后重新編譯,就OK了。

javaCompileOptions { annotationProcessorOptions { includeCompileClasspath = true } }

}

四、常用注解

@Data 注解在類上;提供類所有屬性的 getting 和 setting 方法,此外還提供了equals、canEqual、hashCode、toString 方法

@Setter :注解在屬性上;為屬性提供 setting 方法

@Getter :注解在屬性上;為屬性提供 getting 方法

@Log4j :注解在類上;為類提供一個 屬性名為log 的 log4j 日志對象

@NoArgsConstructor :注解在類上;為類提供一個無參的構(gòu)造方法

@AllArgsConstructor :注解在類上;為類提供一個全參的構(gòu)造方法

@Cleanup : 可以關(guān)閉流

@Builder : 被注解的類加個構(gòu)造者模式

@Synchronized : 加個同步鎖

@SneakyThrows : 等同于try/catch 捕獲異常

@NonNull : 如果給參數(shù)加個這個注解 參數(shù)為null會拋出空指針異常

@Value : 注解和@Data類似,區(qū)別在于它會把所有成員變量默認(rèn)定義為private final修飾,并且不會生成set方法。

@toString:注解在類上;為類提供toString方法(可以添加排除和依賴);

官方文檔https://projectlombok.org/features/index.html

總結(jié)

以上是生活随笔為你收集整理的import lombok 报错_Android上使用Lombok和set、get方法告别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。