2015-10-13 85 views
2

在我的Java項目中,我使用Lombok工具來生成getter和setter。
它與Maven完美協作,沒有任何配置。爲什麼Eclipse需要爲龍目島進行配置?

爲什麼我需要爲Lombok配置Eclipse?
我已經知道如何配置Eclipse:https://projectlombok.org/download.html

爲什麼我必須在我的eclipse.ini中添加以下行?

-javaagent:lombok.jar 
+0

由於lombok不是標準庫,它實際上是在編譯之前編輯源代碼。所以Java在查找依賴關係之前需要有它。 –

+0

安裝後,它通常可以直接使用。提供定製的Java代理似乎會導致問題。 –

回答

1

龍目網站指出:

Lombok copies your source files to another directory, 
replacing all lombok annotations with their desugared form. 

所以配置做只是因爲源代碼被修改。沒有「javaagent」會很困難。

+0

Lombok爲什麼不使用java註釋處理器? https://deors.wordpress.com/2011/10/08/annotation-processors/ – asicfr

+0

爲什麼我們在使用maven時不需要配置任何東西? – asicfr

+0

因爲我們很聰明:) –

0

龍目島uses Java annotation processor。因此,無論您使用哪個IDE,如果Lombok的罐子可用於javac,您的獲取者和設置者將被生成,並且Lombok的所有其他功能都能按預期工作。

Maven添加依賴的罐子(包括Lombok的)到-classpath參數javac,所以你不需要Java代理來爲你測試代碼。

+0

我想相信你,但我到目前爲止還沒有找到訣竅讓它在沒有代理人的情況下工作 – asicfr