Lombok 未在 Netbeans 项目中工作

问题描述 投票:0回答:4

我想在项目中使用Lombok来使用@Getter和@Setter。

我使用了 Maven:

    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.12.6</version>
        <scope>provided</scope>
    </dependency>

Netbeans 可以导入:

import lombok.Getter;
import lombok.Setter;

但是自动设置器和获取器不起作用(没有自动完成/“找不到符号......”)。

奇怪的是,对于我的另一个项目,它运行良好!但我无法弄清楚其中的差异。

我测试过:

  • 更改lombok版本(甚至是最后一个):对于任何版本,导入都不再起作用

  • 用Maven构建项目:没问题!

  • 使用Eclipse:就可以了! (但不幸的是我是唯一一个决定的)

=> 所以我确信这是一个与 Netbeans 相关的问题

  • 启用注释处理,正如我在教程中看到的那样=>我的项目属性中没有这样的选项

有什么想法吗?

netbeans lombok
4个回答
11
投票

在 Netbeans 21 中使用 Apache Maven 3 在 Maven 中开箱即用使用 Lombok。版本越新越好

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <scope>provided</scope>
    <version>1.18.32</version>
</dependency>

注意

  • 对于maven-compiler-plugin,删除任何要执行的annotationProcessorPaths 在 maven-compiler-plugin 中使用 Lombok
  • 删除所有 Lombok maven 插件

这不是必需的,因为 Maven 和 Netbeans 是开箱即用的。您只需要 Maven 中正确的 Lombok 依赖项。


8
投票

我在https://groups.google.com/forum/#!topic/project-lombok/xbgzA86pvJs

找到了解决方案

=> 更新 maven-compiler-plugin 版本是使其工作的唯一方法


6
投票

这对我们有用:

  • 从 Lombok 依赖项中删除
    <scope>provided</scope>
  • 清理并构建项目
  • 更改Lombok版本(我们从
    1.16.20
    更改为
    1.16.16
  • 清理并构建项目
  • 恢复Lombok版本并放回去
    <scope>provided</scope>
  • 清理并构建项目

1
投票

配置pom

<properties>
    <src.dir>src/main/java</src.dir>
</properties>

<profiles>
    <profile>
        <id>lombok-build</id>
        <properties>
            <src.dir>${project.build.directory}/generated-sources/delombok</src.dir>
        </properties>
    </profile>
</profiles>

<dependencies>
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.16.8</version>
    <scope>provided</scope>
</dependency>
</dependencies>
    <build>
        <sourceDirectory>${src.dir}</sourceDirectory>
    <plugins>
        <plugin>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok-maven-plugin</artifactId>
            <version>1.16.16.0</version>
            <executions>
                <execution>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>delombok</goal>
                    </goals>
                    <configuration>
                        <sourceDirectory>src/main/java</sourceDirectory>
                        <addOutputDirectory>false</addOutputDirectory>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

然后,在“项目属性”->“操作”->“激活配置文件”下,将 lombok-build 指定为各种操作(构建、调试等)的活动配置文件。

在这个博客有一个github示例项目和带有图片的配置,以使用最新版本的maven + netbeans + lombok,这对我有用。

© www.soinside.com 2019 - 2024. All rights reserved.