要在 IDEA 中为自定义组件提供高亮提示,需分四层实现:一是通过 spring-boot-configuration-processor 生成 metadata 实现配置项智能提示;二是规范定义注解并启用注解高亮与跳转;三是配置 TODO 模式高亮特殊注释关键词;四是注册自定义文件类型支持 DSL 高亮。

要在自定义组件(比如 Spring Boot 中的工具类)里,让自定义配置或注解在 IDEA 中获得高亮提示,关键不是“给工具类加注解”,而是让 IDEA 识别你定义的配置结构或语义标签,并将其纳入编辑器的语义感知体系。这通常涉及两层:一是注解本身的语法高亮(靠 IDE 的语言支持),二是配置项/元数据的智能提示(靠 Spring Boot 或插件机制)。下面分场景说明。
让自定义 @ConfigurationProperties 配置类获得属性提示
这是最常见也最实用的场景——你写了一个工具类,用 @ConfigurationProperties 绑定配置,希望在 application.yml 或 application.properties 里输入时有自动补全和文档提示。
- 在
pom.xml中添加处理器依赖(编译期生效):
- 编写配置类,必须含 getter/setter,且被 Spring 管理(加
@Component或通过@EnableConfigurationProperties注册):
@ConfigurationProperties(prefix = "my.tool")
public class ToolConfig {
private String apiKey;
private int timeout;
// getter/setter 必须完整
}
- 执行 Maven compile(或 Build → Build Project),IDEA 会自动生成
target/classes/META-INF/spring-configuration-metadata.json - 之后在
application.yml中输入my:,就能看到tool:提示;继续输入tool:,会列出apiKey、timeout及其类型、描述(可加@Description注释增强)
让自定义注解本身获得语法高亮与跳转支持
如果你开发的是框架型工具类,并定义了如 @ToolEnabled、@AutoRetry 这类运行时注解,IDEA 默认不会高亮它们——除非你告诉它“这是注解”。
- 确保注解声明规范(带
@Target和@Retention):
@Retention(RetentionPolicy.RUNTIME)
public @interface AutoRetry {
int maxAttempts() default 3;
}
- 在 IDEA 中手动启用注解高亮(适用于所有 Java 注解):
Settings → Editor → Color Scheme → Java → Annotations → 勾选 “Enable annotation highlighting”,并设置颜色 - 若想支持 Ctrl+Click 跳转到该注解定义,确保项目已正确导入源码(Maven 项目通常自动下载 sources.jar)
让工具类中的特殊注释关键词高亮(如 // TOOL_INIT)
有时你在工具类里用注释标记关键逻辑段,例如 // TOOL_INIT、// SAFE_CHECK,希望它们像 TODO 一样醒目。
- Settings → Editor → TODO → 点击 + 号添加 Pattern
- 输入正则表达式,例如:
TOOL_\w+(匹配所有大写 TOOL_ 开头的词) - 为其指定颜色(如黄色背景+黑字),勾选 “Case sensitive” 如需严格匹配
- 保存后,只要代码中出现
// TOOL_INIT,整行就会按你设定的样式高亮
进阶:为自定义 DSL 或模板语法提供高亮(如工具类生成的 .template 文件)
如果你的工具类配套生成私有格式文件(如 config.template),其中含 ${db.url} 这类变量,IDEA 默认不识别。
- Settings → Editor → File Types → 点击 + 新建 “Recognized File Type”
- 命名为 “Template File”,添加注册模式:
*.template - 在 “Keywords” 栏添加
${、}等符号,或关联已有语法(如 “HTML” 或 “Text”)再微调注释/变量样式 - 重启 IDEA,该类型文件即可获得基础高亮与括号配对支持











