質問

誰もが成功したプロジェクトとの組み合わせでAnt4Eclipseを( http://www.ant4eclipse.org/ に)使用していましたロンボク( http://projectlombok.org/ の)?

ロンボクは、定型的なコードを除去するためのアノテーションを提供します。しかし、Ant4Eclipse(Eclipseプロジェクトのヘッドレスのコンパイル)とうまくプレーすることは表示されません。たとえば、以下のロンボクサンプルは、Eclipseとjavacで罰金をコンパイルします:

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

しかしAnt4Eclipseの<buildJdtProject>でコンパイルするには、以下が得られます:

[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] ----------

誰もが正常に一緒にこれらのライブラリを使用していますか?

ありがとうございます。

編集サンプルプロジェクト

問題を実証する
役に立ちましたか?

解決

私は最終的には、

との最初のプロジェクトをdelombokingによってant4eclipseとロンボクのプロジェクトをコンパイルするために管理します
<delombok verbose="true"; encoding="UTF-8" 
    to="${workspaceDirectory}/myproject/src" 
    from="${workspaceDirectory}/myproject/src-original" />

他のヒント

IIRC Eclipseでロンボクを使用するためには、JDTのコンパイル処理にロンボク島のJavaエージェントを導入するために、起動時に必要なパラメータがあります。これは通常、eclipse.iniファイルで指定されています。 Ant4Eclipseはまた、これらのパラメータを使用しない場合は、あまりにもそのため-javaagent:lombok.jarパラメータを指定する必要があります(私はなぜそれがだろうが表示されません)。

免責事項:これは唯一の推測です。

提供されるプロジェクトは、EclipseでJava 6のエラーを使用してEclipseのJava EEの3.5.2で箱から出してコンパイルされませんant4eclipseによって与えられたものと同じである。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top