eclipse - Lombok 和 STS 问题 - 方法未定义

标签 eclipse spring-tool-suite eclipse-luna lombok

我有基于 Eclipse Luna 4.4.1 的 STS 版本 3.6.3.SR1。

我做了以下步骤:

  • 下载并运行 Lombok runnable jar 并给出我的 STS 的路径。
  • 我验证了 vmargs 的条目, 但不见了 Xbootclasspath并添加它导致
    -vmargs -Dosgi.requiredJavaVersion=1.6
    -XX:MaxPermSize=256m
    -Dorg.eclipse.swt.browser.IEVersion=10001
    -Xms512m
    -Xmx1024m
    -javaagent:C:\tools\Lombok\lombok.jar
    -Xbootclasspath/a:C:\tools\Lombok\lombok.jar
    
  • 我退出并从快捷方式以及 STS.exe 的绝对位置打开了 STS。 .
  • 我验证了用 @Data 注释的 Java 类的大纲和其他 Lombok 注释。我可以看到生成的 getter 和 setter。甚至自动辅助也会显示该方法。
  • 我做了 Maven → 更新项目,甚至做了一个项目清理
  • 从“帮助”的“关于 STS”确认 Lombok 也已安装。

  • 即使在所有上述事件之后,仍有许多编译器问题提示未定义的方法 getXXX()setXXX()在所有 @Data@Getter@Setter注释。

    Maven 构建成功运行并且运行时行为很好,因为编译的类似乎具有 getter 和 setter。

    IntelliJ 似乎没有问题,因为其他开发人员可以使用该库。

    我的 pom.xml也有以下条目:
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.16.4</version>
    </dependency>
    

    我该如何解决?

    P.S:我下载了基于 STS 的 Eclipse Kepler build 以启用 JBoss Fuse Tooling。

    最佳答案

    @Karthik R,感谢您的帖子。以下帮助我解决了这个问题:

  • 转至 the Lombok page并下载并双击 jar 并安装在您的 IDE 中。
  • 之后,打开.ini文件,看看它是否有 javaagent Xbootclasspath 变量。

  • 就我而言, Xbootclasspath 丢失了,当我添加它时,它起作用了。
    -Xbootclasspath/a:PATH_To_lambok.jar
    

    关于eclipse - Lombok 和 STS 问题 - 方法未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30478397/

    相关文章:

    java - 将 Eclipse 更改为 UTF-8 编码后文本损坏

    eclipse - 将 PyDev 安装到 Eclipse

    java - MacOS 的 Eclipse/STS 中的包 View 样式出现问题

    eclipse - Spring Tool Suite (STS) - 无法更新

    eclipse - 在 Eclipse Luna 中安装 spring 插件

    java - 在eclipse中,如何让一个项目覆盖另一个项目的类文件

    java - Eclipse Luna 不保留注释处理生成的代码

    eclipse - tomcat 7 @WebServlet

    javascript - eclipse : can't remove default encoding for javascript and json

    eclipse - 无法在 Eclipse 中创建网络连接