介紹
本篇文章,主要講idea引入lombok后,在實體類中加注解@Data,在項目啟動的時候,編譯不通過,報錯xxx.java沒有getXxxx()方法。
原因有以下幾種
1. idea沒有開啟lombok插件
2. 使用idea-2023創建maven項目,使用jdk17.創建后,只要刷新maven依賴,再啟動項目就報錯。這個是因為在pom中plugin中lombok沒有明確顯示lombok的版本
3. jdk和lombok不一致,導致編譯報錯,我的lombok版本是1.16.18,jdk是? ?
????????????????java version "1.8.0_221"。
解決辦法
1. idea沒有開啟lombok插件
打開idea,File----settings------Build,Exeution,Deployment-------Compile------Annotation Processors。或者在settings中直接搜annotation.如圖
勾選開啟就可以了
2. 刷新maven不識別lombok
報錯圖1
上圖中可以看出,已經在User實體類上加了@Data注解了。編譯的時候報錯,打開settings,可以看見已經開啟注解處理了,如圖
?針對這種問題,
解決辦法一:
把選中的項目移動的default下面
操作完成后,如圖
?再啟動項目就可以了。
但是每次引入新的依賴,刷新maven后就又報錯。
解決方案二:
這里不知道jar的版本,所以去pom.xml文件中搜索了一下哪個地方沒有設置版本
?然后在下面加上版本
<lombok.versin>1.18.16</lombok.versin>
我現在用的版本是
<lombok.versin>1.18.16</lombok.versin>
然后再刷新maven,在settings中就出現jar的版本了
?
再啟動項目就可以了
3. jdk和lombok不一致
只需要修改lombok的版本就可以了
舊:
<lombok.versin>1.16.18</lombok.versin>
新
<lombok.versin>1.18.16</lombok.versin>
修改完,刷新maven,就好了,再不行就重啟idea。