Lombok 已正确安装在 STS 上,IDE 中仍然有红色下划线

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

我在我的 pom.xml 文件中添加了 Lombok 依赖项:

<dependency>
 <groupId>org.projectlombok</groupId>
 <artifactId>lombok</artifactId>
 <version>1.18.22</version>
</dependency>

Lombok库出现在相应的.m2子文件夹中后,我点击它,选择STS位置并安装,没有错误。 名为 lombok 的新文件已添加到 STS 根文件夹中,我能够使用标准 Maven 命令更新/安装我的应用程序。 不管怎样,STS 不断地在使用 Lombok 的类的 setter/getter 和构造函数下划线,就好像它无法找到这些方法一样。 在 Stackoverflow 上的一些帖子之后,我从依赖项中删除了 PROVIDED 范围,并修改了我的 .ini 文件,如下所示:

-startup
plugins/org.eclipse.equinox.launcher_1.6.600.v20231106-1826.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.2.800.v20231003-1442
-product
org.springframework.boot.ide.branding.sts4
--launcher.defaultAction
openFile
-vm
plugins/org.eclipse.justj.openjdk.hotspot.jre.full.win32.x86_64_17.0.10.v20240120-1143/jre/bin
-vmargs
-javaagent:C:\Users\biagi\Downloads\sts-4.21.1.RELEASE\lombok.jar
-Xbootclasspath/a:C:\Users\biagi\Downloads\sts-4.21.1.RELEASE\lombok.jar
--add-opens=java.base/java.io=ALL-UNNAMED
--add-opens=java.base/sun.nio.ch=ALL-UNNAMED
--add-opens=java.base/java.net=ALL-UNNAMED
--add-opens=java.base/sun.security.ssl=ALL-UNNAMED
-Dosgi.requiredJavaVersion=17
-Dosgi.dataAreaRequiresExplicitInit=true
-Dorg.slf4j.simpleLogger.defaultLogLevel=off
-Dsun.java.command=SpringToolSuite4
-Dp2.trustedAuthorities=https://download.eclipse.org,https://archive.eclipse.org,https://cdn.spring.io
-Xms256m
-Xmx2048m
--illegal-access=permit
--add-modules=ALL-SYSTEM

无论如何,这并没有改变什么。即使我可以正确编译,这个问题将来也可能会很麻烦,因为 IDE 可能会在红线之间隐藏真正的错误。

有人可以帮忙吗?

提前致谢。

java maven lombok sts
1个回答
0
投票

您是否为 maven-compiler-plugin 配置了注释处理器?

    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.8.0</version>
            <configuration>
                <source>${java.version}</source>
                <target>${java.version}</target>
                <annotationProcessorPaths>
                    <path>
                        <groupId>org.projectlombok</groupId>
                        <artifactId>lombok</artifactId>
                        <version>${lombok.version}</version>
                    </path>
                </annotationProcessorPaths>
            </configuration>
        </plugin>
    </plugins>
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.