2015-05-01 129 views
26

我有一個使用lombok的基於Gradle的項目。我已將此項目導入IntelliJ IDEA 14.1(使用導入外部模型導入方法)。我可以在Gradle中運行沒有問題的JUnit4單元測試,但是看到Lombok生成的Getters,IntelliJ似乎有問題。這阻止了我在IDEA中運行測試。IntelliJ IDEA無法看到龍目島生成的代碼

爲了確保它不是設置問題,我創建了一個Very simple project並確認在簡單測試項目中出現了同樣的問題。

我的版本: 搖籃:gradle這個-2.3-所有通過搖籃包裝器
的IntelliJ IDEA:IU-141.713
龍目插件:0.9.2

缺少什麼我在這裏?

更新通過看不到我不是指身體不可見。我的意思是這樣的:

/home/meeee/workspace/junit-lombok-idea/lib/src/main/java/com/example/jumbokea/Main.java 
Error:(10, 11) java: cannot find symbol 
    symbol: method setIntField(int) 
    location: variable sc of type com.example.jumbokea.SomeClass 
Error:(12, 41) java: cannot find symbol 
    symbol: method getIntField() 
    location: variable sc of type com.example.jumbokea.SomeClass 
Error:(14, 33) java: constructor AnotherClass in class com.example.jumbokea.AnotherClass cannot be applied to given types; 
    required: no arguments 
    found: float,com.example.jumbokea.SomeClass 
    reason: actual and formal argument lists differ in length 
Error:(16, 46) java: cannot find symbol 
    symbol: method getSomeFloat() 
    location: variable ac of type com.example.jumbokea.AnotherClass 
Error:(17, 43) java: cannot find symbol 
    symbol: method getSomeClass() 
    location: variable ac of type com.example.jumbokea.AnotherClass 

經反編譯的類顯示getter和setter方法,但我發現這些錯誤,當我得到的IntelliJ運行的「應用」或單元測試。

Getters and setters are there, but not there???

回答

39

您需要啓用註釋預處理。 See documentation here

另外,你應該安裝龍目島的插件,如果尚未

+0

我已經啓用了註解處理,但它以某種方式被關閉。一切正常,直到昨天下午4點左右,突然間它開始顯示這些錯誤。某種程度上禁用了註釋處理。 – copolii

+2

不要忘記在啓用註釋預處理器後重新啓動IntelliJ。這是我的問題 –

2

它可以在build文件夾中可以看出。

enter image description here

5

我設法通過執行以下操作來解決這個問題:

+3

已經有一個正確和被接受的答案。 Maven在這裏無關緊要。我從來沒有這樣做過,從不需要它。 – copolii

+2

所有其他解決方案都不適合我,所以我想我會分享一個 –

0

在龍目島的情況下,IntelliJ允許您搜索變量的用法,其中也包括getters和setter。只需點擊變量名稱即可。option/alt + f7

這適用於Intellij 2016和Lombok插件0.13.16。我不確定舊版本。