Apple Silicon版IntelliJ IDEA CE注解处理失效求助
切换到Apple Silicon专属IntelliJ版本后,Maven Spring Boot项目出现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.$Proxy8
Lombok supports: OpenJDK javac, ECJ
尽管全局及模块编译器已设置为AdoptOpenJDK,但配置未生效,以下是原因分析及修复方法:
可能原因
- 迁移后残留x86_64架构的JDK配置,Apple Silicon版IntelliJ未正确识别指定的arm64版本JDK
- IntelliJ缓存未更新,旧的编译器配置仍在生效
- Maven编译插件未明确指定JDK,默认调用了系统代理的编译器
手动修复方法
1. 确认JDK为Apple Silicon兼容版本
打开File → Project Structure → Platform Settings → SDKs,检查JDK路径对应的是arm64架构的AdoptOpenJDK,而非x86_64版本。若存在旧架构JDK,直接移除并重新添加arm64版本的JDK。
2. 强制Maven使用指定JDK编译
在项目pom.xml中添加maven-compiler-plugin配置,明确指定编译器路径,避免使用代理编译器:
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.11.0</version> <configuration> <source>17</source> <!-- 替换为你的项目JDK版本 --> <target>17</target> <fork>true</fork> <executable>${java.home}/bin/javac</executable> </configuration> </plugin> </plugins> </build>
3. 清除IntelliJ缓存并重启
点击File → Invalidate Caches...,选择Invalidate and Restart,彻底清除旧的缓存与索引,让IntelliJ重新加载配置。
4. 验证注解处理器设置
打开Settings → Build, Execution, Deployment → Compiler → Annotation Processors:
- 确保
Enable annotation processing已勾选 - 确认
Store generated sources relative to选择Module content root,生成路径为target/generated-sources/annotations
5. 更新Lombok插件
打开Settings → Plugins,检查Lombok插件是否为最新版本,Apple Silicon版IntelliJ需要兼容arm64架构的插件版本,旧版本可能存在兼容性问题。
内容的提问来源于stack exchange,提问作者patman

