Intellij IDEA lombok不生效导致大量实体类的GetSet方法报错

Intellij IDEA lombok不生效导致大量实体类的GetSet方法报错,第1张

问题:Intellij IDEA 中lombok未生效,从git拉取到本地的项目,大量实体类的Get Set方法报错.

出现上述问题的原因,大致分为以下几种:

1、lombok包依赖没有注入

解决方案:在pom文件中加入lombok包的依赖 (Maven仓库: https://mvnrepository.com/search?q=lombok )

<dependency>

<groupId>org.projectlombok</groupId>

<artifactId>lombok</artifactId>

<version>1.18.8</version>

</dependency>

2、lombok插件没安装

解决方案:在Intellij IDEA File-->Settings-->Plugins的Marketplace中搜索插件 lombok,然后Installed

3、Settings中没开启annotation processing

解决方案:在Intellij IDEA File-->Settings-->build,excecution,deployment-->compiler-->annotation processors勾选上 enable annotation processing

重启后问题完美解决lombok不生效的问题。

1.为了项目的正确运行,必须让所有的子模块使用依赖项的统一版本,必须确保应用的各个项目的依赖项和版本一致,才能保证测试的和发布的是相同的结果。在我们项目顶层的pom文件中,我们会看到dependencyManagement元素。通过它元素来管理jar包的版本,让子项目中引用一个依赖而不用显示的列出版本号。Maven会沿着父子层次向上走,直到找到一个拥有dependencyManagement元素的项目,然后它就会使用在这个dependencyManagement元素中指定的版本号。

2.相对于dependencyManagement,如果在父pom文件中中通过dependencies引入jar,将默认被所有的子模块继承。子模块如果希望有自己个性化的内容,可以在子模块中对于其中的某个属性进重新定义。

3.dependencyManagement里只是声明依赖,并不实现引入,因此子项目需要显式的声明需要用的依赖。如果不在子项目中声明依赖,是不会从父项目中继承下来的;只有在子项目中写了该依赖项,并且没有指定具体版本,才会从父项目中继承该项,并且version和scope都读取自父pom另外如果子项目中指定了版本号,那么会使用子项目中指定的jar版本。dependencies即使在子模块中不写该依赖项,那么子模块仍然会从父项目中继承该依赖项(全部继承)。在实际的项目开发中,推荐在父pom中使用dependencyManagement对项目中使用到的依赖包进行统一的管理。

效果图:


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11390854.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-15
下一篇2023-05-15

发表评论

登录后才能评论

评论列表(0条)

    保存