简介:这款安装包对应 JetBrains 官方发布的社区版集成开发环境,适用于 Linux 操作系统,版本号为 2020.3.4,压缩包名为 ideaIC-2020.3.4.tar.gz。它遵循 Apache 2.0 开源许可,允许用户在个人和商业项目中免费使用,且大多数内置插件同样开放源代码。
开发环境原生支持 Java、Kotlin、Groovy、Scala 等 JVM 语言,集成 Maven、Gradle、sbt 等常见构建工具,能够对接 Git、GitHub、SVN 等版本控制仓库,同时提供调试器、Docker 容器支持、Lombok 注解处理以及 Spring Assistant 插件,方便开发者直接创建、运行和调试 Spring Boot 项目。
安装包大小约 700.51MB,内部共有 2788 个文件,以 Java 归档库文件为主,还包括许多配置模板、图标资源、动态链接库以及开源许可说明;解压后目录结构完整,保留了官方便携版本运行所需的主要组件和插件体系,非常适合离线部署或团队统一分发。
目前已有 1093 人学习下载。对于需要快速搭建 Linux 下 Java 开发环境、避免外网下载不稳定或需要批量安装开发工具的开发者,这份资源能够提供完整基础;同时它也能满足初学者练习编码、工程师开展日常项目构建与调试的需求。简洁稳定的版本特性也让这一安装包成为长期可用的开发环境基础。
1. 为什么 2020.3.4 的 ideaIC 还是值得装一次
拿到ideaIC-2020.3.4.tar.gz这个文件名,第一反应通常是「这么老的版本还有什么可说的」。但 2020.3 是 IntelliJ IDEA 旧版本号体系下的最后一个分支,2020.3.4又是这个分支的安全修复收尾版。它不需要安装器,一个 tar.gz 解压就能跑,对内存有限的旧机器、需要长期复现某个遗留工程环境的团队,以及只想看代码、跑 Maven 任务的场景,社区版足够,还不用考虑授权问题。这篇文章按照实际会遇到的操作顺序来讲:下载校验、解压、首次启动、配置目录、中文插件、Maven 与 JDK 绑定,最后给几个验证安装和管理配置的实用技巧。新手能照着命令走通,老手可以重点看 2020.3 与新版在目录和参数上的差异。
2. 下载 ideaIC-2020.3.4.tar.gz 与校验:先确认包是完整的
2.1 从 idea 历史版本页面拿正版包,别再碰第三方转存的
官网首页只放最新版本,2020.3.4属于历史版本,要从 JetBrains 的 Other Versions(历史版本)入口进。这个页面按年份排列全部历史发行版,需要往下翻到 2020.3 这一行,选择 Linux 下的 tar.gz。文件命名规则里就藏着说明:ideaIC表示 IntelliJ IDEA Community 社区版,对应的ideaIU是 Ultimate 旗舰版,ideaIC和ideaIU的区别在后续章节会展开。下载页没有强制登录,浏览器直接下即可,建议把ideaIC-2020.3.4.tar.gz单独放到~/Downloads下并长期保留。
社区版本身就是免费授权,不需要任何激活手段。凡是要求破解、激活码的第三方转存包,要么是捆绑了不明脚本,要么是版本被改过,解压出来内容对不上,这也是很多人解压时报错的源头。历史版本页面下载虽然慢一点,但行为是确定的,可复现。
2.2 用 sha256sum 做完整性校验,排除下载中途断掉
压缩包几百 MB,走浏览器下载很容易断点续传出问题,而问题往往在解压到一半才暴露。先对包做一次 SHA256 校验,把页面提供的校验值和本地算出来的做比对,是成本最低的确认方式。
cd ~/Downloads sha256sum ideaIC-2020.3.4.tar.gz输出一串 64 位十六进制字符,和官方下载页面给出的值逐字符对比。如果页面同时提供了.sha256后缀文件,更省事的做法是:
sha256sum -c ideaIC-2020.3.4.tar.gz.sha256-c参数表示 check 模式,会让命令读取文件里记录的正确哈希,并自动和实际算出的值比对,结果只有OK和FAILED两种。看到FAILED就不要继续解压,用wget -c或浏览器重新下载,重复一次校验。这一步能过滤掉绝大多数「解压到一半报错、某个 jar 打开失败」的问题。
2.3 解压 tar.gz 到 /opt 下,避开权限和路径两大坑
tar.gz 文件怎么解压是搜索频率最高的问题,核心参数就四个:-x解压、-z按 gzip 处理、-f指定文件名、-C指定解压目标目录。推荐装到/opt/idea,全局可访问,不会因为用户目录搬家而找不到:
sudo mkdir -p /opt/idea sudo tar -xzf ideaIC-2020.3.4.tar.gz -C /opt/idea ls -l /opt/idea-z可以省略,现代 GNU tar 会根据文件头自动识别 gzip 压缩格式,但显式写上可读性更好。解压完成后/opt/idea下会出现一个类似idea-IC-203.*的目录,*是完整构建号,每台机器下载的包一致,但手工敲容易拼错,建议用ls先看一眼实际名字,再重命名为易记的路径:
sudo mv /opt/idea/idea-IC-* /opt/idea/idea-2020.3.4 sudo chown -R "$USER":"$USER" /opt/ideachown -R把目录归属改成当前用户,这一步不执行也能正常启动,但后续如果要在 bin 目录里改 vmoptions、或者手工放 jar 包,没有 root 会很别扭。解压过程里最常见的几种报错,原因和对应处理如下:
| 报错原文 | 常见原因 | 处理方式 |
|---|---|---|
gzip: stdin: not in gzip format | 下载不完整,或文件根本不是 tar.gz(比如一个 HTML 错误页) | 回 2.2 校验哈希,重新下载 |
tar (child): Cannot open: No such file or directory | 压缩包路径写错,或-C指向的目录不存在 | 先ls -l确认包在不在当前位置,再mkdir -p建目标目录 |
tar: Cannot mkdir: Permission denied | 目标目录(如/opt)需要 root 权限 | 给命令加sudo |
tar: Not found in archive | 包名或者版本号拼错,解压出来的目录名和预期不符 | ls /opt/idea看实际目录名,别手敲 |
提示:解压占用空间远大于压缩包体积,/opt所在分区建议预留 2GB 以上。如果系统用的是 bsdtar 而不是 GNU tar,以上参数完全一致,不用额外处理。
3. 解压后的目录结构与 idea.sh 首次启动的最小配置
3.1 bin、lib、plugins、jbr 各自负责什么
解压后第一件事不是急着启动,而是先看清楚目录结构,后续排查问题会省很多时间:
cd /opt/idea/idea-2020.3.4 && ls -F预期能看到这些目录:bin/、build.txt、lib/、license/、plugins/、product-info.txt或product-info.json,以及jbr/。jbr是 JetBrains Runtime 的缩写,2020.1 之后版本把 IDE 自己运行所需的 Java 运行时打进包里,目录存在意味着这台机器即使没有装任何 JDK,IDE 本身也能启动。bin/下是idea.sh启动脚本和 vmoptions 模板;lib/存放 IDE 核心 jar 包;plugins/是随包携带的默认插件,比如 Git 集成、Markdown、终端工具;license/放的是 JetBrains 各产品共用的授权相关组件,社区版不会用到激活逻辑,不用管它。
3.2 启动前先明确运行时:系统 JDK 和自带 jbr 的关系
2020.3 官方支持用 JDK 8 或 JDK 11 来运行 IDE 进程。bin/idea.sh会按固定顺序找运行时:先找IDEA_JDK环境变量指定的路径,再找JDK_HOME,然后是JAVA_HOME,全部没设置才落到包内自带的jbr/。默认情况下就是用自带 jbr 启动,这也是最不容易翻车的配置。
cd /opt/idea/idea-2020.3.4 # 不设置任何变量,直接启动,进程会用自带 jbr 11 bin/idea.sh如果你明确想用系统 JDK 来跑 IDE,才需要显式指定:
export JDK_HOME=/usr/lib/jvm/java-11-openjdk-amd64 bin/idea.sh注意JDK_HOME的路径要按本机实际安装位置改,ls /usr/lib/jvm看有哪些目录。这里有个容易混淆的点:IDE 的运行 JDK 和项目的编译 JDK 是两回事。开发 Java 17 项目时,在 File -> Project Structure -> SDKs 里添加 JDK 17 的路径,项目照样能编译运行,但这不意味着 IDE 进程本身跑在 17 上。2020.3.4没有在 JDK 17 上做过兼容验证,不要试图用 17 启动 IDE,卡在启动动画或者直接没反应时先检查这里。
3.3 首次启动后,idea 2020.3 的配置落在哪里
2020.1 起,JetBrains 全家桶在 Linux 上全面改用 XDG 目录规范,2020.3的配置不再放在~/.idea或~/.IntelliJIdea2020.3,而是分散在三处。启动一次后就会自动生成:
| 内容 | 默认路径 |
|---|---|
| 配置文件(设置、快捷键、vmoptions) | ~/.config/JetBrains/IntelliJIdea2020.3 |
| 系统缓存(索引、局部历史、编译缓存) | ~/.cache/JetBrains/IntelliJIdea2020.3 |
| 插件与日志 | ~/.local/share/JetBrains/IntelliJIdea2020.3,日志在其中的log/目录 |
记住这套路径的价值在于:排查问题时可以直接看日志文件,而不是在 IDE 里翻 Help 菜单。另一个实用场景是重置环境,插件装乱或者设置改坏了,把 config 目录整体移走即可让 IDE 恢复出厂状态:
mv ~/.config/JetBrains/IntelliJIdea2020.3 ~/idea-config-backup重启idea.sh后会自动重建一套全新配置,旧配置在备份目录里随时可以找回。很多「idea 自动关闭、启动闪退」的问题,第一步就该这样隔离变量,确认是配置问题还是环境问题。
3.4 自定义 idea.vmoptions,处理内存不足导致的自动关闭
idea 自动关闭是社区版用户高频遇到的问题:项目索引到一半 IDE 没了,或者打开大文件直接卡死退出。多数情况是堆内存不够。默认的Xmx对普通项目够用,但索引 10 万行以上的工程、同时跑 Maven 构建时就显得紧张。不要直接改bin/idea64.vmoptions,那个文件在升级或重解压时会被覆盖,正确做法是用 IDE 提供的用户级配置:
-Xms512m -Xmx2048m -XX:ReservedCodeCacheSize=512m -XX:+UseG1GC把上面内容写到~/.config/JetBrains/IntelliJIdea2020.3/idea.vmoptions,重启生效。也可以在 IDE 里的 Help -> Edit Custom VM Options 打开同一个文件。参数含义:-Xms初始堆大小,-Xmx最大堆,-XX:ReservedCodeCacheSize是 JIT 编译缓存上限;UseG1GC在 JDK 11 下是默认值,写出来是为了明确意图。物理内存 8GB 的机器给 2048m 是安全值,给到 4096m 需要确认没有其他大进程抢内存。如果想验证当前生效的虚拟机参数,在 Settings -> 搜索Memory,打开的 Memory Indicator 能实时看到堆占用。
4. 社区版(ideaIC)与旗舰版(ideaIU)的边界,以及 idea 插件与中文设置
4.1 ideaIC 和 ideaIU 差在哪里:社区版做不了 Spring Boot 向导
先回答搜索热度最高的概念问题:ideaIC对应 Community 社区版,ideaIU对应 Ultimate 旗舰版,同一个 IDE 内核,按功能集区分。对纯 Java/Kotlin 开发来说,社区版的差距没有想象中大:
| 能力 | ideaIC 社区版 | ideaIU 旗舰版 |
|---|---|---|
| Java/Kotlin/Groovy、Maven/Gradle 构建 | 支持 | 支持 |
| Git/SVN/版本控制、JUnit 测试 | 支持 | 支持 |
| Spring / Spring Boot 专用插件 | 不支持 | 支持 |
| JavaScript/TypeScript 前端完整支持 | 基础 | 完整 |
| Database 数据库工具窗口 | 不支持 | 支持 |
| 授权成本 | 免费 | 商业付费 |
高频搜索词idea创建springboot项目在社区版里会碰壁:New Project 向导没有 Spring Initializr 选项,这会让新手误以为 IDEA 不能开发 Spring Boot。实际做法是去 start.spring.io 生成工程包,下载后用 IDEA 的 Open 打开目录,Maven 编译、spring-boot:run运行都没问题,只是缺少注解提示、Bean 依赖分析这类提升效率的功能。如果你的团队都是社区版,建议统一走 Maven 原型或在线生成器,工程文件里不要依赖 IDEA 私有的 facet 配置。
4.2 idea 设置中文:用官方语言包插件,别找汉化补丁
2020.3没有内置语言切换,官方中文化依靠插件机制实现。在 Settings -> Plugins -> Marketplace 里搜索Chinese (Simplified) Language Pack,找到中文语言包后点 Install,重启即可。安装后界面菜单整体变成中文,快捷键和配置项不变。这个插件是 JetBrains 官方维护的,和第三方汉化补丁不是一回事。如果网络环境下 Marketplace 加载不出来,可以到插件仓库页手动下载与 2020.3 匹配的 zip,再用 Settings -> Plugins 右上角齿轮 -> Install Plugin from Disk 离线安装。离线安装前建议先看一眼 zip 内容,确认格式没被二次打包:
unzip -l ~/Downloads/ChineseLanguagePack-2020.3.zip | head正常插件 zip 内部应该包含lib/目录和META-INF/plugin.xml。unzip -l只列出内容不解压,head截取前几行,如果看到的是一堆零散 classes 或文件夹层级不对,说明文件被重新压缩过,不要安装。
4.3 给 idea 配置 maven 和本地 JDK,跑通一个普通工程
社区版是idea 配置 maven搜索的主力人群。Settings -> Build, Execution, Deployment -> Build Tools -> Maven,这里有三项要改:Maven home directory 指向你解压出来的 Maven 目录,比如/opt/maven/apache-maven-3.6.3;User settings file 勾选 Override 后选择自定义的settings.xml;Local repository 填写本地仓库路径。一份适合国内网络环境的settings.xml最小模板:
<settings> <localRepository>/opt/maven-repo</localRepository> <mirrors> <mirror> <id>aliyun</id> <name>Aliyun Public</name> <mirrorOf>central</mirrorOf> <url>https://maven.aliyun.com/repository/public</url> </mirror> </mirrors> </settings>localRepository指定依赖包落地位置,建议放在大分区下避免~空间被撑爆;mirrorOf写central表示只对 Maven 中央仓库走镜像,其他仓库不受影响。JDK 的配置在 File -> Project Structure -> SDKs,点加号选 JDK,把本机 JDK 安装目录选中,IDE 会自动识别版本号。这一层配置完成后,新建或打开一个 Maven 工程,右侧 Maven 工具窗能看到依赖列表能正常解析,才算跑通。
4.4 离线安装 idea 插件与插件目录迁移
社区版的插件安装路径有章可循,插件装多了想知道装在哪,直接看这个目录:
ls ~/.local/share/JetBrains/IntelliJIdea2020.3/plugins每个插件一个子目录。这个布局带来的好处是迁移成本极低,换机器时不用一个个重装,直接打包带过去:
tar -czf idea-plugins-2020.3.tar.gz -C ~/.local/share/JetBrains/IntelliJIdea2020.3 plugins新机器上解压到相同位置,重启 IDE 即可。版本敏感型插件(如 Lombok)在新旧版本间迁移可能出现不兼容,迁移后注意看启动时插件加载日志,有问题就删掉对应插件目录,别整包回退。
5. 验证安装与几个长期有用的 idea 小技巧
5.1 用 product-info.json 确认真实版本号
启动画面显示的信息可能被自定义过,确认版本最可靠的方式是直接读lib/product-info.json:
python3 -c "import json;d=json.load(open('/opt/idea/idea-2020.3.4/lib/product-info.json'));print(d.get('name'));print(d.get('version'));print(d.get('buildNumber'))"这段命令用 Python 的json模块读取文件,分别输出产品名、版本号和构建号。buildNumber是 2020.3 分支的内部编号,如果显示203.*说明包没问题。启动报错时先看日志末尾:
tail -n 80 ~/.local/share/JetBrains/IntelliJIdea2020.3/log/idea.log日志的时间戳和堆栈能直接定位到是插件加载失败还是 JVM 参数问题,比在网上搜错误关键字更快。
5.2 把 idea 变成一条命令,并添加桌面图标
每次cd到 bin 目录再执行脚本很啰嗦,把 bin 加进 PATH 一劳永逸:
echo 'export PATH="/opt/idea/idea-2020.3.4/bin:$PATH"' >> ~/.bashrc source ~/.bashrc idea &如果桌面环境带图形菜单,创建~/.local/share/applications/idea.desktop:
[Desktop Entry] Name=IDEA Community 2020.3.4 Exec=/opt/idea/idea-2020.3.4/bin/idea.sh Icon=/opt/idea/idea-2020.3.4/bin/idea.svg Terminal=false Categories=Development;IDE;保存后执行update-desktop-database ~/.local/share/applications,应用菜单里就能搜到 IDEA。注意Exec和Icon的路径要和你实际解压位置一致。
5.3 同时跑两份配置:利用 XDG 变量做隔离
一套配置用于日常开发,一套用于临时验证插件,不需要复制目录,用 XDG 环境变量直接覆盖默认路径:
XDG_CONFIG_HOME=/tmp/idea-test XDG_CACHE_HOME=/tmp/idea-test-cache /opt/idea/idea-2020.3.4/bin/idea.shIDE 在 Linux 上就是按这三个 XDG 变量定位配置、缓存和插件目录的。给变量指定新路径后,启动的就是一个全新的干净实例,不影响原配置,测完直接删/tmp/idea-test*完成清理。这个方法同样适用于排查「某个插件把界面改坏了但不知道是哪个」的场景,比反复装卸插件快得多。
本文还有配套的精品资源,点击获取