[英]How to get lombok generated source to be visible in eclipse/maven?
我正在嘗試使用 lombok ( https://projectlombok.org/ ) 來幫助“樣板”代碼生成。 我已經添加了 maven 依賴項,並且還在 POM 中的<build>
元素中添加了 lombok maven 插件。
我還被告知要做的一件事是將 lombok 注釋的代碼放在src/main/lombok
而不是src/main/java
。 我假設我保持包目錄結構與src/main/java
。
這看起來有點奇怪,但我這樣做了,lombok 確實使用所有 getter/setter/equals/hashCode 等方法生成了源文件。 它們被放置在例如target/generated-sources/lombok/x/y/z/MyClass.java
。 這是我使用其他代碼生成工具(如 XJC)時所期望的。
我的問題是:如何讓這個生成的源代碼對 eclipse 和編譯環境“可見”? 我到處都是編譯錯誤,因為它無法“看到”生成的代碼。 這發生在 eclipse 以及當我嘗試執行mvn clean install
。
更新:
我已經嘗試將 lombok 安裝到 eclipse 中。 它生成 getter/setter/etc,但在某處引入了一個錯誤,該錯誤破壞了 eclipse 的自動完成功能。 我從 eclipse 中刪除了它,只是想讓 maven 來做一代(或 delombok-ing)。
您必須為 Eclipse 啟用注釋處理才能獲取生成的代碼。
Properties
。Java Compiler
,然后打開Annotation Processing
。 選中Enable annotation processing
。Java Compiler
-> Annotation Processing
-> Factory Path
。 選中Enable project specific settings
。 將您的 Lombok JAR 文件添加到列表中。下載 Lombok jar ( https://projectlombok.org/download ) 並執行java -jar lombok.jar
並選擇您的 eclipse 安裝文件夾。重新啟動 eclipse 並重建項目。
要驗證 Lombok 安裝,請查看 Help -> About eclipse。 龍目島條目顯示在底部。
我的問題是使用完整的命名空間注釋: @lombok.Getter
,我通過執行import lombok.Getter
並執行@Getter
解決了它
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.