解決 maven 專案中加入了 lombok 庫後依然報錯的問題
平時我們採用 maven 引入第三方庫,可以方便的管理第三方 jar 包,然加入 lombok 後啟動 eclipse 依然報錯,這是由於 lombok 是通過反射在執行時自動生成 getter()、setter()、hashCode()、toString(),故早於通過 maven 引入第三方 jar 包,所以我們需要在 eclipse 的配置檔案 eclipse.ini 中增加如下兩行:
-Xbootclaspath/D:/copyright/repository/org/projectlombok/lombok/1.16.4/lombok-1.16.4.jar
-javaagent:D:/copyright/repository/org/projectlombok/lombok/1.16.4/lombok-1.16.4.jar
lombok 的版本和具體路徑改成自己的即可。
注意:路徑中建議使用“左斜線(/)”,左斜線單個即可;當然我們也可以使用“右斜線(\\)”,不過“右斜線(\\)”需要成對出現,如此例,使用“右斜線(\\)”後結果如下:
-Xbootclaspath\\D:\\copyright\\repository\\org\\projectlombok\\lombok\\1.16.4\\lombok-1.16.4.jar
-javaagent:D:\\copyright\\repository\\org\\projectlombok\\lombok\\1.16.4\\lombok-1.16.4.jar
備註:
lombok 是採用註解用於自動為 POJO 生成 getter()、setter()、hashCode()、toString() 等方法的第三方類庫。其常見的註解如下:
1、@Getter 和 @Setter 可以作用於類上,指明為此類的全部非靜態屬性(non-static)生成 getter() 和 setter();作用於屬性上,則只為此屬性生成 getter() 和 setter() 方法。
2、@EqualsAndHashCode 生成 equals() 和 hashCode() 方法。
3、@ToString 生成 toString() 方法,各屬性直接以逗號分隔。
4、@Data @ToString, @EqualsAndHashCode, 所有屬性的@Getter, 所有non-final屬性的@Setter和@RequiredArgsConstructor的組合,通常情況下,我們使用這個註解就足夠了。