2772 字
约 9 分钟
11
S01-B06 · IDEA 插件:安装、选型与成本

适用读者:键位练熟(S01-B05)、开始"看到推荐就装"的人;以及"IDEA 越用越慢"的人。
前置:S01-B04、S01-B05。
实测环境:IDEA 2025.x 口径;启动耗时与内存测量方法给的是可复现步骤(本机未跑基准,标注「方法」而非「实测」)。
覆盖旧文:A-1357(插件安装,49 点)、A-1358(13 款主题插件,94 点)、A-1359(8 款效率插件,59 点)、A-1853(10 个"神级"插件,70 点)、A-1854(五子棋插件,50 点)= 322 点。
上一篇:S01-B05 · IDEA 快捷键与效率动作
下一篇:S01-B07 · 终端与包管理器。

标注约定:文中「实测」= 我实际跑过的数字;「方法」= 可复现的测量步骤但未在本机出数;「待核」= 未经当前版本点验的说法。


1. 一句话结论

插件是唯一同时影响「启动速度、索引时间、内存占用、键位冲突」四件事的东西。装它之前先问一句:这个能力 IDE 现在是不是已经内置了?

旧文推荐了 30 多款插件,其中相当一部分的功能已被 IDE 本体吸收(或由官方插件替代)。2026 年的选型判据不是"这个插件好不好",而是"这个能力还需要插件吗"。


2. 三维打分法:装之前先算一笔账

维度 问什么 打分(1–3)
增益 每周能省多少时间?省的是"分钟级"还是"秒级"? 3 = 每天必用;1 = 偶尔用
成本 启动慢多少?索引慢多少?内存多占多少? 3 = 无感;1 = 明显变卡
冲突 会不会抢键位?会不会和其他插件改同一处 UI? 3 = 无冲突;1 = 已知冲突

判据:三维相加 ≥ 7 才留,≤ 5 就删。 这个门槛听起来粗暴,但它解决了一个真实问题——插件只增不减。

一个常被忽略的成本:索引

带"代码分析"能力的插件(静态检查、AI 补全、框架支持)会在项目索引阶段插一脚。你在小 demo 上感觉不到,在 20 万行的工程上会变成"每次打开等 3 分钟"。


3. 插件从哪装

方式 路径 适用
内置市场 Settings → Plugins → Marketplace,搜名字 → Install → 重启 日常
从磁盘安装 Plugins → ⚙ → Install Plugin from Disk…(选 .zip/.jar) 内网、离线(旧文 A-1357 的离线做法仍然有效)
命令行 idea installPlugins <id1> <id2> 批量初始化环境(配合 S01-A01 的 Onboarding)
插件市场网页 plugins.jetbrains.com 下载 找历史版本、看兼容矩阵

插件 ID ≠ 插件显示名。命令行/脚本安装要用 ID(如 com.intellij.plugins.eclipsekeymap)。网页版插件页的 URL 里那串就是 ID。


4. 效率类插件:按"现在还需不需要"重排

旧文 A-1359 / A-1853 的推荐,按当前能力重排成三档:

4.1 值得留(补的是 IDE 本体没有的能力)

插件 解决什么 为什么不装会疼 成本提示
Key Promoter X 你用鼠标点了某个本可用快捷键的操作时,右下角提示对应键位 这是唯一能让键位学习自动发生的工具(配合 B05 的"一天一个动作") 极低
Maven Helper 图形化依赖树,标红冲突,一键排除 手读 dependency:tree 长文本很痛苦(S01-J07 会用到) 低
GitToolBox 行尾显示上次改动者/时间、分支落后提示 追"这行是谁写的、为什么"时省一次 git blame 低(关了 blame 行尾可降)
CamelCase 驼峰/下划线/短横线互转 对接外部接口命名风格时高频 极低
Translation 选中即译(含变量命名翻译) 读英文文档/命名时的辅助 中(默认走在线翻译,注意隐私)
MyBatisX XML 与 Mapper 接口互跳、SQL 生成 写 MyBatis 项目必需(S08 会用到) 低(仅 MyBatis 项目)

4.2 可试(看你项目类型)

插件 说明
File Expander(A-1853) 在编辑器里直接展开 jar/zip 内容,排查依赖里到底装了什么
arthas idea(A-1853) 生成 Arthas 诊断命令,线上排障时省查文档(S05 相关)
SonarLint 本地静态检查;若团队已在 CI 上跑 SonarQube,本地版可减少来回
Alibaba Java Coding Guidelines 规范检查;但团队规范若已用 Checkstyle/SpotBugs,就别装两套
CodeGlance 右侧代码缩略图;大文件导航用,小文件纯装饰
Statistic 代码行数统计;一次性需求,用完可卸

4.3 大概率别装(已被替代或收益过低)

旧文推荐 当前状况 结论
Codota(A-1359 第 1 款) 全行补全能力已由 IDE 本体 + 官方 AI Assistant 提供;Codota 已被 Tabnine 收购整合 先用本体补全,不够再说
Free Mybatis plugin(A-1853) 功能与 MyBatisX 重叠,两者同装会抢跳转 二选一,选 MyBatisX
Lombok(A-1853、A-1359) 仍需要(IDE 需启用 Annotation Processing),但不是"锦上添花"——项目用了 Lombok 就必须装,否则一片红 按项目需要装,并检查 Enable annotation processing
主题类插件(A-1358 的 13 款) IDE 内置主题 + 官方 "Theme" 市场已足够 一次只留 1 个,且主题不参与三维打分(纯审美)

Lombok 的坑单独说:装了插件但没开注解处理,会出现"编译通过、IDE 全红"。路径:Settings → Build, Execution, Deployment → Compiler → Annotation Processors → Enable annotation processing。


5. 主题插件:一次性消费,别反复折腾

旧文 A-1358 列了 13 款主题(One Dark、Dracula、Doki、Solarized、Atom OneDark、Cyan Light…)。这里不去评价好看与否,只讲三条工程判断:

  1. 主题影响可读性,不影响效率。挑一个对比度足够、语法高亮区分度高的,然后停止折腾。
  2. Doki 这类"角色主题"会明显改变 UI 布局,与新版 UI(New UI)常常不兼容,出现面板错位。
  3. 团队协作场景:截图/录屏时用哪个主题无所谓,但行内 diff 配色建议保持默认,否则别人看不懂你的截图。

6. 怎么量化插件成本(方法,非实测)

没有现成数字前,别凭感觉删插件。给一套可复现的测量:

6.1 启动与索引耗时

# 1. 找到 idea.log(Help → Show Log in Files)
# 2. 清空/重命名后重启 IDE,再打开同一工程
# 3. 看日志里的时间戳跨度
grep -nE "Starting IntelliJ IDEA|Project opened|Indexing" idea.log | head -20

两次记录对比:插件全开 vs Settings → Plugins → ⚙ → Disable All Downloaded Plugins(只留内置)。差值就是插件的真实启动税。

IDE 是否有内置的"插件加载耗时"视图随版本变化(待核)。用 idea.log 时间戳是最稳的,不依赖版本。

6.2 内存

Help → Diagnostic Tools → Show Memory Indicator(或状态栏内存条)看堆占用;Help → Change Memory Settings 调 -Xmx(B07/S01-J05 会深讲)。插件多了会推高堆占用与 GC 频率。

6.3 冲突

Settings → Keymap 搜动作 → 看是否标红;Settings → Plugins 里冲突插件会给出提示条;装了 IdeaVim 之后所有原键位语义都变(B05 §6 第三层)。


7. 趣味插件:A-1854 的五子棋与"插件边界"

旧文 A-1854 介绍了一个能在 IDEA 里下五子棋的插件。它没有工程价值,但很适合用来讲清一件事:

插件生态的边界是"宿主提供的 API"。 能画面板、能读编辑器内容、能注册动作——所以五子棋这类玩具才装得进来。反过来,任何插件都能读你打开的所有代码,这是安全边界问题:只装来源可信(JetBrains 官方 / 知名组织 / 开源可审计)的插件,公司项目尤其如此。

判断插件是否可信:看 Marketplace 页的下载量 + 最近更新 + 是否 JetBrains 官方认证(Verified),三者缺一就先别装在生产项目上。


8. 插件冲突排查顺序

症状:IDE 变慢 / 键位失灵 / 某功能报错 / UI 错位
  │
  1. 先在 Settings → Plugins 里「Disable All Downloaded Plugins」重启 → 症状消失?
  │     否 → 不是插件问题(查 B05 §6 / J05)
  │     是 ↓
  2. 二分法:启用一半 → 重启 → 复现?
  │     逐步缩小到单个插件(通常 2–3 轮)
  ↓
  3. 确认是某插件后:查 Marketplace 的兼容版本、issue 区 → 升级/降级/换替代
  ↓
  4. 仍不行:Help → Show Log in Files,搜该插件 ID 的异常栈,作为 issue 证据

9. 旧文对照

旧文 内容 本篇处理
A-1357 插件安装(市场 + 离线 zip) §3 保留;补命令行批量装与"插件 ID ≠ 显示名"
A-1358 13 款主题插件 压成 §5 的三条工程判断;不做审美排序
A-1359 8 款效率插件(Codota、Key Promoter X、CodeGlance、Lombok、Alibaba 规范、CamelCase、MyBatisX、SonarLint) 逐款重新归入"值得留/可试/别装";Codota 标注为"已被本体+AI Assistant 替代"
A-1853 10 个"神级插件"(Vuesion、lombok、File Expander、GitToolBox、Maven Helper、Translation、arthas idea、Free Mybatis…) 并入 §4;指出 Free Mybatis 与 MyBatisX 冲突(旧文没有交叉比对)
A-1854 五子棋插件 §7 转为"插件边界与安全"讨论,保留其"玩具"属性
— 旧文没有成本量化 新增 §2 三维打分、§6 测量方法、§8 冲突排查顺序

10. 自测

  1. 为什么"主题插件"不参与三维打分?
  2. 装了 Lombok 插件但 IDE 全红、命令行正常,最可能缺了哪一步?
  3. Free Mybatis 与 MyBatisX 同装会出什么问题?
  4. 同事说"IDEA 慢是插件太多",你怎么用数据验证或推翻这句话?
  5. 从安全角度,什么样的插件不该装在公司的生产项目 IDE 上?

11. 下一篇

S01-B07 · 终端与包管理器:从系统终端到 Tabby / Warp / WindTerm

IDE 之外,另一半战场在终端。下一篇把旧文的终端工具测评(Tabby、Warp、WindTerm)与包管理器(Homebrew、Chocolatey)合成一条可执行的路径:先让 ssh 免密可用,再谈界面好不好看。


本篇属于系列《S01 · 开发环境与工具链》。旧文来源:A-1357/1358/1359/1853/1854;点位映射见 ../coverage.csv。

S01-B06 · IDEA 插件:安装、选型与成本
https://www.clxhxhhr.top/posts/5160/
作者
clxstart
发布于
2024-12-31
许可协议
CC BY-NC-SA 4.0
评论
0 条
还没有评论,先写一条吧。