1. 程式人生 > >Eclipse安裝lombok,專案中所有get、set方法報錯

Eclipse安裝lombok,專案中所有get、set方法報錯

Lombok是能自動接通編輯器和構建工具的一個Java庫。最大的特點是不用再一次寫額外的getter或者equals方法。然而專案已經匯入了lombok-1.16.6.jar,仍然報錯,或者說lombok的jar包沒有生效,經過查閱資料才知道,是lombok外掛沒安裝,查詢其官網能看到安裝方式,如下圖所示:
點我進入 lombok的官網
在這裡插入圖片描述
點選進來之後便是如圖所示介面:
在這裡插入圖片描述
大致意思便是,雙擊開啟官網下載的jar包或者maven匯入的jar包,選擇以Java™ Platform SE binary的方式開啟,
在這裡插入圖片描述
選擇確定自己指定IDEs工具(即eclipse的解壓目錄),選擇Specify location…,然後選擇eclipse的解壓目錄或者eclipse.exe
在這裡插入圖片描述


最後選擇Install/Update即可安裝成功!
安裝成功後重啟eclipse就會發現工程中的get、set方法的報錯消失了。

如果還有錯誤

  • 可以清空eclipse工作空間下->.metadata->.plugins,不過注意清空之後,eclipse中所有的工程都會消失,可以重新匯入。
  • 也可以切換一個工作空間,重新匯入所需的工程即可!

總結:lombok官網上有相關該外掛的詳細介紹,有一些註解還是很方便的!


註解 描述
@Getter / @Setter 可以作用在類上和屬性上,放在類上,會對所有的非靜態(non-static)屬性生成Getter/Setter方法,放在屬性上,會對該屬性生成Getter/Setter方法。並可以使用該註解中的AccessLevel屬性來指定Getter/Setter方法的訪問級別。
@ToString 生成toString方法,預設情況下,會輸出類名、所有屬性,屬性會按照順序輸出,以逗號分割。可以使用該註解中的exclude屬性來指定生成的toSpring方法不包含物件中的哪些欄位,或者使用of屬性來指定生成的toSpring方法只包含物件中的哪些欄位
@EqualsAndHashCode 預設情況下,會使用所有非瞬態(non-transient)和非靜態(non-static)欄位來生成equals和hascode方法,也可以使用exclude或of屬性。
@NoArgsConstructor 生成無參構造器
@RequiredArgsConstructor 會生成一個包含標識了@NonNull註解的變數的構造方法。生成的構造方法是private,如果想要對外提供使用的話,可以使用staticName選項生成一個static方法。
@AllArgsConstructor 生成全參構造器,當我們需要過載多個構造器的時候,Lombok就無能為力了。
@Slf4j 該註解是用來解決不用每次都寫private final Logger logger = LoggerFactory.getLogger(XXX.class); 這句程式碼的。使用的日誌框架是LogBack
@Log4j 該註解也是用來解決不用每次都寫日誌物件宣告語句的,從字面上也可以看出,使用的日誌框架是log4j
@Data 該註解是 @ToString、@EqualsAndHashCode註解,和所有屬性的@Getter註解, 以及所有non-final屬性的@Setter註解的組合,通常情況下,我們使用這個註解就足夠了。