在 spring tool suite 如何安装 lombok

在 Spring Tool Suite (STS) 中安装 Lombok 的步骤如下:


1. 下载 Lombok Jar


2. 运行 Lombok 安装程序

  • 双击下载的 lombok.jar,会弹出 Lombok 安装界面。

  • 如果无法直接运行,可以通过命令行执行:

    bash 复制代码
    java -jar lombok.jar

3. 指定 STS 安装路径

  1. 在 Lombok 安装界面中,点击 "Specify Location""Install/Update"
  2. 手动定位到 STS 的安装目录(例如 /Applications/SpringToolSuite4.app),选择 SpringToolSuite4.ini 文件(STS 的配置文件)。
    • 确保选择的不是 eclipse.ini,而是 STS 自带的配置文件。

4. 修改 SpringToolSuite4.ini 文件

  • Lombok 会自动在 SpringToolSuite4.ini 中添加一行配置,例如:

    ini 复制代码
    -javaagent:/Applications/SpringToolSuite4.app/Contents/Eclipse/lombok.jar
  • 如果未自动添加,请手动将以下行添加到 SpringToolSuite4.ini 文件的 开头部分 (确保路径正确):

    ini 复制代码
    -javaagent:/Applications/SpringToolSuite4.app/Contents/Eclipse/lombok.jar

5. 验证安装

  1. 重启 STS。
  2. 创建一个简单的 Java 类,使用 Lombok 注解(如 @Data),如果代码无报错且能正常编译,说明安装成功。
  3. 也可以通过 STS 的 About Spring Tool SuiteInstallation DetailsPlug-ins 查看是否包含 lombok

6. 配置项目依赖(Maven/Gradle)

确保项目中已添加 Lombok 依赖:

Maven 项目
xml 复制代码
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.30</version> <!-- 使用最新版本 -->
    <scope>provided</scope>
</dependency>
Gradle 项目
groovy 复制代码
compileOnly 'org.projectlombok:lombok:1.18.30'
annotationProcessor 'org.projectlombok:lombok:1.18.30'

常见问题解决

  1. STS 启动报错

    • 检查 STS.ini-javaagent 的路径是否正确。
    • 确保 Lombok 版本与 STS 兼容(最新版通常没问题)。
  2. 注解不生效

    • 确保项目中已正确添加 Lombok 依赖。
    • 在 STS 中,选中某个项目,打开项目的设置,启用注解处理:
      Properties → Java Compiler → Annotation Processing → 勾选 Enable annotation processing
  3. 无法双击运行 lombok.jar

    • 通过命令行 java -jar lombok.jar 运行。
  4. 在 STS 中检查当前使用的 JRE

Preferences → Java → Installed JREs。

确保已选择 JDK (如 /Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home),而非 JRE
有的时候即使 STS 工具已经设置好了 JDK,但是项目里可能还是选了 JRE,我就是遇到这个问题,很隐蔽的坑,需要注意


通过以上步骤,Lombok 应该能在 STS 中正常工作。如果仍有问题,可以尝试重新安装或查看 Lombok 日志文件(安装时会提示路径)。

相关推荐
troyzhxu2 小时前
列表查询的 GraphQL —— 一行代码终结你的 if-else 地狱!
java·springboot·graphql
孫治AllenSun2 小时前
【DataX】生产环境搭建DataX集群案例
java·开发语言·jvm
好好沉淀3 小时前
@NotBlank(message = “{xxx}“) 注解中花括号的含义
java
fīɡЙtīиɡ ℡4 小时前
内存泄漏产生的原因
java·spring·servlet
码智社5 小时前
Java实现RSA密钥生成、加密解密、加签验签
java
wear工程师5 小时前
ThreadLocal 在线程池里为什么会串数据:别只会答内存泄漏
java·后端
Iruoyaoxh5 小时前
栈和队列~
java·开发语言
审小匠OpenCPAi5 小时前
银行流水核查怎么自动化?单边匹配、双向勾稽与图聚类异常检测的工程对比
java·前端·人工智能·python·审计
码上上班5 小时前
docker课程
java·docker·容器
腻害兔5 小时前
【若依项目-产品经理视角】RuoYi-Vue-Pro 源码拆解:CRM 客户关系模块深度解析——从线索到回款,一套完整的 B2B 销售闭环是怎么搭的?
java·前端·javascript·vue.js·产品经理·ai编程