2010-04-05 20 views
9

Czy ktoś z powodzeniem użył Ant4Eclipse (http://www.ant4eclipse.org/) w połączeniu z Project Lombok (http://projectlombok.org/)?Czy ktoś użył Ant4Eclipse z Project Lombok?

Lombok zapewnia adnotacje do usuwania kodu standardowego; jednak nie wygląda na to, by ładnie grać z Ant4Eclipse (bezgłowy kompilacji projektów Eclipse). Na przykład, następujący przykładowy Lombok kompiluje grzywny w Eclipse i javac:

import lombok.Getter; 
public class LombokTest { 
    private @Getter String foo; 
    public LombokTest() { 
    String s = this.getFoo(); 
    } 
} 

Ale kompilacji z Ant4Eclipse na <buildJdtProject> daje następujące:

[javac] Compiling 1 source file 
[javac] ---------- 
[javac] 1. WARNING in C:\dev\Java\workspace\LombokTest\src\LombokTest.java (at line 4) 
[javac]  private @Getter String foo; 
[javac]       ^^^ 
[javac] The field LombokTest.foo is never read locally 
[javac] ---------- 
[javac] 2. ERROR in C:\dev\Java\workspace\LombokTest\src\LombokTest.java (at line 8) 
[javac]    String s = this.getFoo(); 
[javac]        ^^^^^^ 
[javac] The method getFoo() is undefined for the type LombokTest 
[javac] ---------- 

Czy ktoś z powodzeniem stosowany tych bibliotek razem?

Dzięki!

Edit: sample project wykazania problem

Odpowiedz

2

I w końcu udało się skompilować projekt Lombok z ant4eclipse przez delomboking projekt najpierw

<delombok verbose="true"; encoding="UTF-8" 
    to="${workspaceDirectory}/myproject/src" 
    from="${workspaceDirectory}/myproject/src-original" /> 
0

Dostarczany projekt nie kompiluje się z pudełka z Eclipse Java EE 3.5.2 przy użyciu Java 6. Błędy w Eclipse są takie same jak te podane przez ant4eclipse.

+0

Niestety, Powinienem zauważyć: trzeba zainstalować Lombok do Eclipse pierwszy (klikając dwukrotnie lib/Lombok/lombok.jar). – gmcnaughton

+0

Masz na myśli dodać lombok.jar do budowy ścieżki? –

+0

Nie, lombok musi podłączyć się do Eclipse. Do tego celu używa agenta Java. Jeśli pobierzesz plik lombok.jar i uruchom java -jar lombok.jar, otrzymasz ekran instalatora, zawierający przycisk wyjaśniający, w jaki sposób zmodyfikuje on instalację Eclipse. I tak, musisz również dodać go do ścieżki budowania. –

1

IIRC w celu wykorzystania Lombok w Eclipse, jest parametr wymagany przy uruchomieniu, aby wprowadzić agenta Java Lombok w procesie kompilacji JDT. Zazwyczaj jest to określone w pliku eclipse.ini. Jeśli Ant4Eclipse również nie użyje tych parametrów (nie rozumiem, dlaczego tak się stało), konieczne może być również określenie parametru -javaagent:lombok.jar.

OŚWIADCZENIE: to tylko domysły.

Powiązane problemy