为IntelliJ IDEA安装插件

安装插件

插件是开发工具的扩展程序,通常由第三方提供,当安装了插件后,原开发工作的菜单、按钮等开发环境可能会发生变化,例如出现了新的菜单项,或出现了新的按钮,甚至一些全新的编码方式,通常,使用插件可以使得开发某些代码或实现某些功能时更加简便。

绝大部分的插件的安装方式都是相同的,另有一部分插件在安装成功后可能还需调整某些设置后才可以正常使用。

本次演示安装的插件是Lombok,它可以使得开发人员在编写类时,定义了属性后,不必再添加Getters & Setters、hashCode & equals、toString等方法,只需要添加相关注解即可。

首先,打开IntelliJ IDEA的设置(在启动界面中打开,或通过主界面的File菜单中Settings选项打开均可):

在设置界面的左侧点击Plugins,在右侧的搜索输入框中输入lombok进行搜索,当出现了Lombok结果项后,点击对应的Install按钮即可开始安装:

IntelliJ IDEA会自动下载并安装插件:

当安装完成后,会出现Restart IDE按钮,点击后IntelliJ IDEA将重启,所安装的插件将生效。

如果某插件并不需要额外的设置,则至此安装过程就已经完成了。

体验Lombok插件

重新打开设置界面,在左侧依次点击Build, Execution, Deployment > Compiler > Annotation Processors,在右侧选中Enable annotation processing,然后点击下方的OK表示确认并关闭设置界面:

创建新的Maven项目,自定义项目名称,确认项目的保存位置,填写GroupId和ArtifactId:

在pom.xml文件中添加Lombok的依赖代码:

xml 复制代码
<dependencies>
    <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.12</version>
        <scope>provided</scope>
    </dependency>
</dependencies>

效果如下图所示:

添加了依赖后,并不会自动下载相关的jar包文件,打开Maven面板,点击按钮栏的第1个按钮:

IntelliJ IDEA将自动下载相关的jar包文件,完成后,代码不再报错:

在项目中自定义类,并声明2个属性,例如:

创建包括main方法的类,在main方法中创建类的对象,尝试调用属性对应的Setter方法,由于该方法并不存在,代码会报错:

回到自定义类,在类的声明之前添加@Setter注解:

再回到main方法,可以发现原本报错的代码将不再报错,因为Lombok框架会自动生成以上2个属性的Setter方法!(当然,通过源代码仍看不到对应的Setter方法,后续,当运行代码时,会自动生成,由于安装了插件,即使当前源代码中并没有Setter方法,但是代码也不会报错):

同理,还可以在自定义类的声明之前添加@Getter和@ToString注解:

在main方法中可以调用对应的Getter方法、输出对象(输出对象时会自动调用toString方法):

运行main方法,可以看到输出Getter方法和输出对象的结果:

关于Lombok框架的详细使用方式,请查阅Lombok的相关文档。

相关推荐
小_太_阳13 分钟前
Scala_【2】变量和数据类型
开发语言·后端·scala·intellij-idea
黑胡子大叔的小屋34 分钟前
基于springboot的海洋知识服务平台的设计与实现
java·spring boot·毕业设计
ThisIsClark36 分钟前
【后端面试总结】深入解析进程和线程的区别
java·jvm·面试
雷神乐乐1 小时前
Spring学习(一)——Sping-XML
java·学习·spring
小林coding2 小时前
阿里云 Java 后端一面,什么难度?
java·后端·mysql·spring·阿里云
V+zmm101342 小时前
基于小程序宿舍报修系统的设计与实现ssm+论文源码调试讲解
java·小程序·毕业设计·mvc·ssm
文大。2 小时前
2024年广西职工职业技能大赛-Spring
java·spring·网络安全
一只小小翠3 小时前
EasyExcel 模板+公式填充
java·easyexcel
m0_748256343 小时前
QWebChannel实现与JS的交互
java·javascript·交互
Jelena技术达人4 小时前
Java爬虫获取1688关键字 item_search接口返回值详细解析
java·开发语言·爬虫