Android Studio 和 lombok 的版本适配、gradle依赖配置、插件安装及使用

文章目录

    • Intro
    • 注意事项
    • Android Studio 和 lombok 的版本选择及下载
      • 下载链接
    • 在 Android Studio 中安装一次 lombok 插件
    • 在每个 gradle 项目中添加 lombok 相关依赖(如要用到)
    • 使用
    • ref

Intro

用惯了 Java+Maven+IDEA 开发后端服务,突然有一天用 Java+Gradle+AndroidStudio 开发安卓。
在写一个bean的时候,想到了之前用过的lombok依赖。
那么在使用gradle管理依赖的安卓开发过程中,如果新增lombok依赖呢?

注意事项

  • 选择大于努力

先选择合适的 Android Studio 版本,再找与之兼容的 lombok 插件。
【并不是每个版本的 Android Studio 都有与之对应的 lombok jar包可用!如:官网信息表示,2022年的所有版本的 Android Studio 都没有对应的 lombok

  • lombok 插件分两步
    1. 对已安装的Android Studio软件,需要为其安装一个plugin:lombok。【这个动作是一次性的,安装一次插件以后次次可用】
    2. 对需要用到 lombok 注解及相关特性的项目,需要在 gradle 的配置文件中添加相关依赖(依赖不能漏)。

Android Studio 和 lombok 的版本选择及下载

下载链接

  • Android Studio 的历史版本: https://developer.android.google.cn/studio/archive
  • lombok 插件的可用版本: https://plugins.jetbrains.com/plugin/6317-lombok/versions/stable

再次注意:找一个有着可用版本的lombok插件的Android Studio去下载。

我的选择:
macOS m1版本:https://redirector.gvt1.com/edgedl/android/studio/install/2023.3.1.14/android-studio-2023.3.1.14-mac_arm.dmg
windows版本: https://redirector.gvt1.com/edgedl/android/studio/install/2023.3.1.14/android-studio-2023.3.1.14-windows.exe
在这里插入图片描述

下载安装之后,打开 Android Studio ,看About信息:

Android Studio Jellyfish | 2023.3.1 Beta 1
Build #AI-233.14808.21.2331.11574862, built on March 14, 2024
Runtime version: 17.0.10+0-17.0.10b1087.17-11446219 aarch64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
macOS 14.4
GC: G1 Young Generation, G1 Old Generation
Memory: 2048M
Cores: 8
Metal Rendering is ON
Non-Bundled Plugins:Lombook Plugin (233.14808.21)com.dguner.lombok-builder-helper (1.5.0)

在这里插入图片描述
拿着版本信息中的 233.14808 去 Lombok页面搜索:
下载搜到的版本: https://plugins.jetbrains.com/plugin/download?rel=true&updateId=502595
在这里插入图片描述

在 Android Studio 中安装一次 lombok 插件

官网:https://projectlombok.org/setup/android
在这里插入图片描述
不过官网提供的这个安装方法并不是最通用的(也许你是在公司开发,无法联网下载插件,也许你的网络环境搜不到某些插件)。
更通用的方式是:下载好插件,然后从本地磁盘文件中安装下载好的插件

File --> Settings --> Plugins --> Installed --> 设置按钮小齿轮⚙️ --> Install Plugin from Disk...
在这里插入图片描述
选择刚才提前下载好的 lombok(这一步经我测试,zip或解压后的jar都可以直接选)。
在这里插入图片描述
之后的 Android Studio 设置界面:
在这里插入图片描述
重启一下 Android Studio,lombok 这个插件就算是安装好了。

在每个 gradle 项目中添加 lombok 相关依赖(如要用到)

官网: https://projectlombok.org/setup/gradle
在这里插入图片描述在你需要用到 lombok 的项目中,要添加的Lombok相关依赖共有4行:

compileOnly 'org.projectlombok:lombok:1.18.32'
annotationProcessor 'org.projectlombok:lombok:1.18.32'testCompileOnly 'org.projectlombok:lombok:1.18.32'
testAnnotationProcessor 'org.projectlombok:lombok:1.18.32'

使用

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructorXxx.builder().xxx.build()

在这里插入图片描述

如果:我们只在gradle配置里加 lombok 相关依赖,则:
lombok相关注解可以使用,也不会报错。
但是:Xxx.builder().build() 方法却无法识别。为 Android Studio 安装 lombok 插件之后,则相关的lombok生成代码才可以正常调用。

ref

  • 解决在Android Studio中Lombok不起作用的问题

这里提到了一种解决Android Studio 只能安装指定版本lombok插件文件的方法:去lombok插件文件中修改前文提到过的build版本号。
我测试了,未成功。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/766639.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C# WPF编程-事件

C# WPF编程-路由事件 路由事件概要路由事件的三种方式 WPF事件WPF最重要的5类事件:生命周期事件 鼠标事件键盘事件多点触控输入原始触控 路由事件概要 路由事件是具有更强传播能力的事件,它们可在元素树中向上冒泡和向下隧道传播,并沿着传播…

端口的学习

端口是什么口?【网络常识3】_哔哩哔哩_bilibili 简化后的数据包: 软件和端口是1对多的关系。 http默认端口是80 https默认端口是443

智慧工地解决方案,智慧工地项目管理系统源码,支持大屏端、PC端、手机端、平板端

智慧工地解决方案依托计算机技术、物联网、云计算、大数据、人工智能、VR&AR等技术相结合,为工程项目管理提供先进技术手段,构建工地现场智能监控和控制体系,弥补传统方法在监管中的缺陷,最线实现项目对人、机、料、法、环的全…

神级工具之git (一): git 基操

一切都从:Git User Manual开始,或者中文版的Git中文手册 核心概念 工作区 工作区我们可见的,可以进行修改的目录树。我们可以在目录树中进行文件的查看,修改。通常我们会使用一个神级编辑器Vim。我给她取了个名字,就…

2024年C语言最新经典面试题汇总(1-10)

C语言文章更新目录 C语言学习资源汇总,史上最全面总结,没有之一 C/C学习资源(百度云盘链接) 计算机二级资料(过级专用) C语言学习路线(从入门到实战) 编写C语言程序的7个步骤和编程…

【测试开发学习历程】认识Python + 安装Python

1 认识 Python 人生苦短,我用 Python —— Life is short, I use Python 1.1 Python 的起源 Python 的创始人为吉多范罗苏姆(Guido van Rossum),江湖人称“龟叔” 1989 年的圣诞节期间,吉多范罗苏姆为了在荷兰首都阿姆…

mac 安装 nvm 【真解决问题】

前提 没有node环境已有git 下载 我用的gitee极速下载 git clone https://gitee.com/mirrors/nvm.git ~/.nvm && cd ~/.nvm && git checkout git describe --abbrev0 --tags配置 1. 配置变量 在用户的目录下新增文件 .zshrc export NVM_DIR"$HOME/…

unity学习(67)——控制器Joystick Pack方向

1.轮盘直接复制一个拖到右边就ok了,轮盘上是有脚本的。(只复制) 2.上面的显示窗也可以复制,但是要绑定对应的轮盘(unity中修改变量),显示窗上是有脚本的。(复制改变量) 3…

康奋威科技邀您到场参观2024长三角快递物流展

参展企业介绍 杭州康奋威科技股份有限公司创立于2005年,由国家“万人计划”专家任天挺先生创立并担任法人,是一家专业从事智能装备研发与制造的国家级高新技术企业。专注于自动化控制、机械设计、信息化方面的技术研究,主要为太阳能光伏、智…

计算机底层结构

一、人类关于计算领域的发展 人类的祖先从树上下来以后开始了一轮新的生存挑战。与其他动物相比人类没有尖牙厉爪,只能去发展大脑,随着大脑的发展人类逐渐的站在了食物链的顶层。但是受制于人类活动和自然因素的发展,许多大型动物越来越少&a…

【动态规划】Leetcode 70. 爬楼梯

【动态规划】Leetcode 70. 爬楼梯 解法1 ---------------🎈🎈题目链接🎈🎈------------------- 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 输入…

CICD流水线(ali)

后端CICD 一、打开云效流水线,创建流水线

【2024第十二届“泰迪杯”数据挖掘挑战赛】B题基于多模态特征融合的图像文本检索—解题全流程(持续更新)

2024 年(第 12 届)“泰迪杯”数据挖掘挑战赛B题 解题全流程(持续更新) -----基于多模态特征融合的图像文本检索 一、写在前面: ​ 本题的全部资料打包为“全家桶”, “全家桶”包含:数据、代码、模型、结果csv、教程…

【ORB-SLAM3】在 Ubuntu20.04 上编译 ORM-SLAM3 并使用 D435i 运行测试

【ORB-SLAM3】在 Ubuntu20.04 上编译 ORM-SLAM3 并使用 D435i 运行测试 1 Prerequisites1.1 C11 or C0x Compiler1.2 Pangolin1.3 OpenCV1.4 Eigen3 2 安装 Intel RealSense™ SDK 2.02.1 测试设备2.2 编译源码安装 (Recommend)2.3 预编译包安装 3 编译 ORB-SLAM34 使用 D435i …

网络学习:RIPNG

目录 前言: 一、RIPNG与RIP的区别 二、如何配置RIPNG 如何解决RIPNG环路问题呢? 控制RIPNG的选路 1、修改RIPNG默认优先级 2.配置接口附加开销值从而干涉RIPNG的选路 RIPNG拓展配置 1.RIPNG的认证 配置RIPNG进程下的IPsec认证: 配…

解决淘宝镜像过期问题 ERR! request https://registry.npm.taobao.org

目录 一、问题描述 二、解决方案 2.1、针对于域名更换解决方案 2.2、针对于证书过期解决方案 三、进行测试 一、问题描述 针对于2022年5月31号和2024年1 月 22 日前的前端项目 npm.taobao.org和旧域名于2021年官方公告域名更换事件,已于2022年05月31日零时起…

Spring Bean加载优先级

当我们使用 ConditionalOnMissingBean / ConditionalOnBean注解去给某个 bean 注入赋予条件时,那在条件判断时我们需要确保条件判断过程所需的环境已准备好。 举个例子 下面的代码中有两个配置类,涉及两个 Bean 的注入 配置类 ConfigA 需要注入一个 A…

SpringBoot源码探险 —— SpringBoot启动流程详解

一&#xff0c;SpringBoot启动流程 本人使用的SpringBootParent版本为 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.4.1</version><relativePath/>…

计算机网络——26通用转发和SDN

通用转发和SDN 网络层功能&#xff1a; 转发&#xff1a; 对于从某个端口 到来的分组转发到合适的 输出端口路由&#xff1a; 决定分组从源端 到目标端的路径 网络层 传统路由器的功能 每个路由器(Per Route)的控制平面 &#xff08;传统&#xff09; 每个路由器上都有实…

Oracle数据库如果出现乱码,需要查看是否时字符集不一致导致乱码,这样解决

1、如果出现乱码&#xff0c;需要查看是否时字符集不一致导致乱码 以修改为ZHS16GBK字符集为例&#xff0c;具体字符集需要sql查询。 Oracle查看字符集 SELECT * FROM NLS_DATABASE_PARAMETERS p where p.PARAMETERNLS_CHARACTERSET; SELECT USERENV(language) FROM DUAL; 1.…