行业资讯
📅 2026/9/8 18:22:42
IntelliJ IDEA 源码构建与运行:4 个场景快速上手
IntelliJ IDEA 源码构建与运行4 个场景快速上手【免费下载链接】intellij-communityIntelliJ IDEA IntelliJ Platform项目地址: https://gitcode.com/GitHub_Trending/in/intellij-communityIntelliJ IDEA Community 是 JetBrains 开源的 Java/Kotlin IDE 源码仓库也是 IntelliJ PlatformIDE 底座框架插件开发的基础。这篇文章带你从克隆仓库到命令行运行、跑单测、打包安装程序按场景走一遍完整流程。快速上手3 条命令跑通本地 IDE第一步克隆仓库git clone https://gitcode.com/GitHub_Trending/in/intellij-community.git cd intellij-community得到本地源码根目录下文简称IDEA_HOMEmaster 分支对应下一个大版本。第二步补齐 Android 配套模块./getPlugins.sh # Windows 用 getPlugins.bat脚本从配套仓库拉取 Android 相关模块主仓库与 Android 仓库务必 checkout 到相同分支或 tag。第三步命令行直接跑起来./bazel.cmd run //build:idea_communityBazelGoogle 的开源构建工具首次会自动下载依赖并全量编译等几分钟 IntelliJ IDEA 社区版窗口会启动你可以直接操作这个自己编出来的 IDE。场景一用 IDE 打开源码做二次开发安装 Bazel 插件在File Settings Plugins里搜索安装 Bazel 插件并启用。项目正在向 Bazel 迁移README 明确仅用 IDE 内建构建已不支持必须走 Bazel。打开 .bazelproject在File Open中选中IDEA_HOME/.bazelprojectIDEA 会提示缺失或版本过旧的插件如 Kotlin按提示启用或升级后重启即可。配置 Maven 变量如果 Maven 插件被禁用按提示把路径变量MAVEN_REPOSITORY指向USER_HOME/.m2/repository避免 Maven 依赖解析失败。场景二只跑某一个模块的测试指定测试用例跑单条测试./tests.cmd -Dintellij.build.test.patternscom.intellij.util.ArrayUtilTest参数-Dintellij.build.test.patterns传入全限定类名只编译并执行这一条用例适合改完一个工具类后快速验证。按运行配置批量跑./tests.cmd -Dintellij.build.test.configurationsApiCheckTest参数-Dintellij.build.test.configurations传入预置的运行配置名会按 CI 的方式批量执行一组测试所有可选参数在 README.md 的 TestingOptions 一节里都有说明。在 IDE 里跑单测在Run Edit Configurations... Templates JUnit里把 Working dir 设为IDEA_HOME/binVM options 加-ea之后就可以右键测试类直接运行。场景三打一个当前系统的安装包一键生成安装程序./installers.cmd -Dintellij.build.target.oscurrent参数-Dintellij.build.target.oscurrent表示只打当前操作系统的安装包产物落在 Bazel 输出目录里。想看最终装进 IDE 的模块清单参考根目录 BUILD.bazel 中main目标的runtime_deps列表一眼能看到全部模块。用 Docker 隔离构建环境docker build . --target intellij_idea --tag intellij_idea_env容器预装了 Bazel 和依赖工具本地不需要提前装环境记得加--user $(id -u)保持文件属主一致避免权限报错。场景四搞清楚产物里到底装了什么用 dist-visualizer 浏览产物结构仓库自带 docs/dist-visualizer/README.md 工具把安装包的 zip 解包后用浏览器查看每个模块的构成判断某个类到底由哪个模块打进来时非常直观。看平台级架构源图docs/plugin-model.puml和docs/jar-format.puml是 PlantUML 源文件装 PlantUML 插件后直接预览能看懂插件加载顺序和 jar 布局docs/readme.md 说明了 PlantUML 插件的安装方式。常见坑Windows 上 clone 报 longpaths 错先执行git config --global core.longpaths true与git config --global core.autocrlf input再克隆。在 IDE 里点 Build 却编译失败项目已迁到 Bazel纯 IDE 内建构建不再支持务必装 Bazel 插件。主仓库和 android 仓库分支不一致getPlugins.sh拉的是配套分支两边不 checkout 到相同 tag 会出现 API 对不上的编译错误。首次bazel.cmd run卡住不动正常首次会拉取所有依赖并全量编译耐心等它出现INFO: Build completed。测试命令行能跑、IDE 里跑不了JUnit 模板的 Working dir 和-ea没配按场景二最后一步补齐。资源汇总主文档与构建命令全集README.md首次贡献流程与规范CONTRIBUTING.md根模块依赖声明BUILD.bazel产物可视化工具docs/dist-visualizer/README.md插件模型图源docs/plugin-model.puml跑通这套流程后你手里就有一个可运行、可改、可打包的 IntelliJ IDEA 社区版下一步挑一个 java/ 或 platform/ 下的模块改一行代码验证自己的构建链路即可。【免费下载链接】intellij-communityIntelliJ IDEA IntelliJ Platform项目地址: https://gitcode.com/GitHub_Trending/in/intellij-community创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考