用途:在编写或审查 IntelliJ 代码时应用其 Kotlin 与 Java 代码风格规范。
主要能力与规则: 语言选择:新文件默认用 Kotlin,除非用户明确要求 Java;已有 Java 文件保持 Java,除非任务需要转换语言。写或审查 Java 前先阅读 Modern Java。使用惯用 Kotlin,如扩展函数、数据类、空安全;实验性 API 用 @ApiStatus.Experimental 标注。 构建脚本:遵循 community/platform/build-scripts/kotlin-style-recommendations.md;内部数据类字段用 @JvmField;用 .put()/.get() 而非 [] 运算符;用显式 HashMap/HashSet/LinkedHashMap 而非 mutableMapOf()/mutableSetOf()。 密封层级:在 when 分支、is 检查或 catch 中列出多个子类型前,先打开类型声明;若存在恰好覆盖这些子类型的公共父类型,则使用父类型。对密封类型或枚举用穷尽 when 检查值,不用 is 检查、as? 转换、== 比较或 else;在 Eel 与 IJent 代码中这是规则,私有类型同样适用,参见 community/platform/eel/docs/api/exhaustive-when.md。 格式:审查或修改格式前阅读所有适用的 .editorconfig,使用其有效值;未定义时默认缩进 2 空格(Go 文件 4 空格)、行宽最多 140 字符、else/catch/finally 换行。仅在 /rustrover 目录必须始终使用标准 Kotlin 格式,4 空格缩进。 错误处理:在 Throwable 或 Exception 的 catch 块中先调用 com.intellij.diagnostic.rethrowControlFlowException(e),它会重抛控制流异常(如 CancellationException),此类异常绝不能进入日志。不要显式捕获或重抛 CancellationException,也不要手动判断异常类型。Java 中静态导入 com.intellij.diagnostic.ControlFlowExceptionsKt.rethrowControlFlowException;不要使用已弃用的 com.intellij.openapi.diagnostic.rethrowControlFlowException。
限制:资料未提供安装命令、收费、平台支持或效果说明。