IDE中lombok插件不支持当前编辑器从而不生效问题

某次编译项目时发现lombok注解不生效(某些类的get/set方法无法找到)问题?
最终问题定位在因为Lombok无法识别当前项目的编译器代理

java: You aren't using a compiler supported by lombok, so lombok will not work and has been disabled.
  Your processor is: com.sun.proxy.$Proxy26
  Lombok supports: sun/apple javac 1.6, ECJ

常见几种解决方案

  1. 确保已经下载lombok插件,卸载再重新下载lombok插件并重启idea

  2. 检查IDE编译器设置

  • 打开设置:File > Settings > Build, Execution, Deployment > Compiler > Java Compiler
  • 确认Use compiler选项为javac(而非Eclipse ECJ等)
  • 启用注解处理:Build, Execution, Deployment > Compiler > Annotation Processors > Enable annotation processing
  • 重启IDE并重新构建项目
  1. 添加如下配置:-Djps.track.ap.dependencies=false


    gIuX8.png
  1. 降级或升级Lombok,尝试固定Lombok版本(如已知稳定版本 1.18.16、1.18.20):
<dependency>
  <groupId>org.projectlombok</groupId>
  <artifactId>lombok</artifactId>
  <version>1.18.20</version>
  <scope>provided</scope>
</dependency>
  1. 构建工具配置,在pom.xml中明确指定Lombok为注解处理器:
<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>3.8.1</version>
      <configuration>
        <annotationProcessorPaths>
          <path>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.24</version>
          </path>
        </annotationProcessorPaths>
      </configuration>
    </plugin>
  </plugins>
</build>
  1. 在启动参数中添加JVM选项禁用代理
-Djdk.proxy.ProxyGenerator.v49=false
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容