具有与项目组合的人成功地用于Ant4Eclipse( http://www.ant4eclipse.org/ )龙目( http://projectlombok.org/ )?

Lombok的提供了一种用于去除样板代码注释;但是,它不会出现与Ant4Eclipse(Eclipse项目的无头编译)发挥很好。例如,下面的Lombok的样品编译在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] ----------

有没有人成功地使用这些库一起?

谢谢!

修改的:示例项目演示问题

有帮助吗?

解决方案

我最终设法编译Lombok的项目与ant4eclipse通过与第一delomboking项目

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

其他提示

IIRC为了在Eclipse使用Lombok的,有在启动时引入龙目的Java剂进入JDT编译过程所需的参数。这是在eclipse.ini文件通常指定。如果Ant4Eclipse不还利用这些参数的(我不明白为什么它会),你可能必须得指定的-javaagent:lombok.jar参数。

免责声明:这仅仅是猜测

提供的项目不编译与Eclipse的Java EE 3.5.2使用Java 6. Eclipse中的误差与由ant4eclipse给出的那些。

的盒的出
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top