【问题标题】:Lombok/Eclipse Issues - I can compile but I cannot runLombok/Eclipse 问题 - 我可以编译但无法运行
【发布时间】:2018-07-05 13:48:40
【问题描述】:

我在使用 Lombok 或 Eclipse 时遇到问题,不确定是哪一个。我有一个使用 Lombok 的 Spring Boot maven 项目。我已经在我的 pom.xml 文件中添加了这个,并且我已经使用了 lombok 来安装 eclipse。

发生的事情是,我可以对项目进行 mvn cleanmvn install 和 maven 更新,并且一切都按预期构建。一旦我开始运行项目错误就开始出现,并且我收到如下错误:

java.lang.Error: Unresolved compilation problems: 
    The method getxxx() is undefined for the type xxxxxx

在运行项目时会发生什么事情可以去除 lombok 吗?!

我正在运行 Eclipse Oxygen (4.7.3) 和 lombok v1.16.18 “Dancing Elephant”,任何帮助将不胜感激。

【问题讨论】:

  • 这是因为运行项目时,您的 getter 和 setter 方法不会在您的 .class 文件中生成。详情请查看this answer
  • 这听起来像是我的问题,但是当我按照答案中的说明操作时,我仍然遇到同样的问题:(
  • 您的目标是什么版本的 Java?我在使用 Java 9 和 Java 10 时也遇到过类似的问题。Java 8 是唯一一个似乎可以完美运行的版本。
  • 在将 lombok 添加到 pom 之后,您是否也这样做了mvn eclipse:eclipse?另外,您是从 Eclipse 中运行项目,还是从 maven/appassembler/whatever 运行项目?
  • 我正在使用 Java 8,奇怪的是它一直运行良好。直到最近才开始出现这种情况。我已经回滚到一个有效的版本,但我仍然看到问题

标签: java eclipse spring-boot lombok


【解决方案1】:

不知道在eclipse中到底是怎么做的,但是在Intellij IDEA中我需要在settings中安装lombok插件,我怀疑在eclipse中也需要这样做。

【讨论】:

    【解决方案2】:

    这里是为 eclipse 和 intellij 设置 lombok 的测试链接。

    https://www.baeldung.com/lombok-ide

    【讨论】:

      【解决方案3】:

      将标签<annotationProcessorPaths> 添加到 pom.xml 解决了我同样的问题。

      <build>
          <plugins>
              <plugin>
                  <artifactId>maven-assembly-plugin</artifactId>
                  <configuration>
                      <annotationProcessorPaths>
                          <path>
                              <groupId>org.projectlombok</groupId>
                              <artifactId>lombok</artifactId>
                              <version>RELEASE</version>
                          </path>
                      </annotationProcessorPaths>
                      ...
                  </configuration>
              </plugin>
          </plugins>
      </build>
      

      【讨论】:

        猜你喜欢
        • 2012-01-02
        • 2011-03-26
        • 1970-01-01
        • 1970-01-01
        • 2019-03-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多