IntelliJ IDEA 默认仅识别标准路径(如 target/generated-sources)下由注解处理器生成的代码;若使用 AST 修改等非标准方式(如类 Lombok 的字节码/编译期增强),IDE 无法自动感知生成方法,需手动配置或改用兼容方案。
intellij idea 默认仅识别标准路径(如 `target/generated-sources`)下由注解处理器生成的代码;若使用 ast 修改等非标准方式(如类 lombok 的字节码/编译期增强),ide 无法自动感知生成方法,需手动配置或改用兼容方案。
在多模块 Maven 项目中(如 App 主模块调用 Mods 模块中的自定义注解处理器),IntelliJ IDEA 能原生支持标准 JSR-269 注解处理器——前提是生成的源码被正确输出到 target/generated-sources/annotations(或 Gradle 对应路径),且该目录被标记为 Generated Sources Root。
✅ 正确做法(推荐):
<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.11.0</version><configuration> <source>17</source> <target>17</target> <annotationProcessorPaths> <path> <groupId>com.example</groupId> <artifactId>mods</artifactId> <version>1.0</version> </path> </annotationProcessorPaths></configuration></plugin>
⚠️ 注意事项:
? 总结:IntelliJ 的智能感知基于静态源码分析。要获得完整 IDE 支持,请坚持 JSR-269 标准实践——让注解处理器生成真实 .java 文件并置于约定路径。非标准 AST 增强虽灵活高效,但需接受 IDE 支持的天然局限。