多彩编程 多彩编程MZPH · CODE BLOG
ARTICLE DETAIL

文章详情

深耕前端与后端开发技术的一线实战笔记与踩坑复盘。

IntelliJ IDEA 2017.3 x64 安装配置与 JavaWeb 老项目实战

IntelliJ IDEA 2017.3 x64 安装配置与 JavaWeb 老项目实战 如果你手头还有一台配置不算高的老机器或者某个历史项目一直锁死在旧版本依赖上那你大概率会翻到这篇文章。我第一次接触 IntelliJ IDEA 2017.3 x64 是在2018年初那时 Spring Boot 刚火起来身边不少同事还在 Eclipse 里挣扎IDEA 给人的第一印象就是三个字重、快、香。启动慢是真的慢但用顺手之后极少有人愿意换回去。2017.3 这个版本正好是 IDEA 从“小众神器”走向“Java 开发主流 IDE”的分水岭它没有后来版本的花哨功能但胜在稳定、占用相对可控对老项目和传统 JavaWeb 开发完全够用。这篇文章不是官方文档的翻译而是我自己从下载、安装、配置到跑起一个 JavaWeb 项目的完整过程记录。我会把安装向导里每个选项的含义、JDK 版本怎么搭、首次启动该做哪些设置、社区版和旗舰版在 JavaWeb 功能上的差异、还有乱码和卡顿这类高频问题都讲清楚。适合三类人看刚接触 IDEA 的初学者、因为老项目被迫继续使用旧版 IDE 的开发者、以及想给低配机器找一套轻量开发方案的人。1. 为什么还在装2017.3这个版本的定位与选型逻辑1.1 2017.3 到底能干什么先说结论IDEA 2017.3 是一个成熟度非常高的版本它覆盖了 Java 开发日常所需的大部分能力包括代码补全、重构、版本控制、Maven/Gradle 支持、调试器、数据库工具等。这个版本发布于 2017 年 11 月核心亮点是完整支持了当时刚发布的 Java 9 模块化特性而且内置了对 Spring、Spring Boot、MyBatis 等主流框架的智能提示与跳转支持。我自己在 2023 年还帮一个朋友在他的旧笔记本上装过这个版本那个笔记本是 8GB 内存、机械硬盘跑新版 IDEA 卡得没法看但 2017.3 勉强能流畅运行。对于学习 Java SE、写 Servlet/JSP 练习、做毕业设计这类场景2017.3 完全够用你不需要为了一行代码提示去追最新版。这个版本在 JavaWeb 方面有个硬性限制社区版Community不支持 Tomcat 集成、不支持 JavaEE 相关工具只有旗舰版Ultimate才提供Run Tomcat的运行配置入口。所以如果你是做 JavaWeb 项目而且不想折腾手动部署请务必要用旗舰版或者准备好接受“写代码用 IDEA、启动服务用 Tomcat 脚本”这种双轨制工作流。1.2 它和2023/2025新版的差距在哪很多人在热搜词里搜“IDEA 2026 怎么配置 springboot 服务”“IDEA 2025 总是cpu飙高卡死”说明大家其实更关心新版的使用问题。但选 2017.3 的人图的就是不卡。用一个表来说明新旧版本的取舍对比维度IDEA 2017.3IDEA 2023最低内存要求2GB4GB 可用4GB推荐 8GB启动速度机械硬盘大约 20-40 秒大约 1-3 分钟第一次索引更久Java 支持范围Java 6-9Java 8-21 甚至更高内置终端外观较老但可用更好用支持颜色主题更丰富插件市场兼容性部分新插件无法安装支持所有新插件对低配电脑友好度高低如果你只是写普通 Java 项目、Servlet/JSP、Spring MVC2017.3 没有任何功能短板。但如果你要开发 Spring Boot 3.x 或者用 Jakarta EE 9 以上规范那 2017.3 由于内置框架版本太旧识别会出错这时候就必须要升级 IDE 了。选型逻辑很简单项目选型跟着 JDK 框架走IDE 选型跟着机器配置走。老机器 老项目 2017.3 很合适新机器 新框架 老老实实装新版。1.3 什么情况下选它更合理这里我总结几条实操判断标准内存小于 8GB风扇容易起飞新版 IDEA 一打开就 CPU 飙高的请选 2017.3。公司内网项目依赖依旧是 J2EE 规范、Spring 4 或 5 以下、JDK 8 的2017.3 完全兜得住。日常只写算法题、刷 LeetCode、做 Java SE 课后作业社区版加 2017.3 是低成本方案。需要完整 JavaWeb 开发预算有限但想用 IDEA 的可以考虑搞一个旗舰版授权也可以用社区版配合外部 Tomcat 启动脚本但不推荐。我必须提醒一句不要碰网上那些“完美激活码”“破解版安装教程 2022/2023/2024”的东西。我见过太多人因为下了带后门的修改版第二天 Git 密钥被上传、代码被加密勒索。IDEA 社区版本来就是免费开源的旗舰版也有 30 天试用期个人学习完全够用。为了省几百块钱把整个开发环境暴露在风险里真的不划算。2. 安装前的环境准备JDK版本、下载渠道与系统要求2.1 JDK版本怎么配重点讲JDK 8IDEA 2017.3 自身内置了一个 JRE但它只是用来运行 IDE 本身的和你编译 Java 代码用的 JDK 不是一回事。安装前你需要单独准备一个 JDK。我的建议是装JDK 8也就是 8u202 或更高的小版本。原因很简单2017.3 发布时 Java 9 刚出很多第三方库还没有适配 Java 9而 Java 8 是当年绝对的主流。用 JDK 8 搭配 IDEA 2017.3兼容性最稳编译、运行、断点调试都不会遇到奇奇怪怪的“模块访问限制”问题。JDK 安装完之后一定要配环境变量否则 IDEA 虽然能识别到你选的 JDK 路径但命令行工具或 Maven 脚本会报“JAVA_HOME not found”。Windows 上这样配右键“此电脑/我的电脑” → 属性 → 高级系统设置 → 环境变量。新建系统变量JAVA_HOME值填 JDK 安装目录例如C:\Program Files\Java\jdk1.8.0_202。编辑Path新增一行%JAVA_HOME%\bin。打开命令行输入java -version和javac -version看到版本信息就说明配好了。这个步骤虽然基础但真有很多人栽在上面。尤其是从 Gitee 或 GitHub 拉取项目到 IDEA 之后项目报错 “Error: java: 无效的源发行版”八成就是 IDEA 里 Project SDK 选错或者本机 JAVA_HOME 指向了太新的 JDK 版本。2.2 官方渠道下载安装包IDEA 2017.3 的官方下载页面现在已经不好找了因为 JetBrains 官网上只会保留最近两三个主版本的下载入口。但你仍然可以通过官网底部的“Other Versions”页面找到归档列表。搜索IntelliJ IDEA older versions就能进到历史版本页面里面按年份排列出 2017.3、2018.1、2018.2 等版本。下载时认准两点操作系统选 Windows架构选 x86_64也就是 x64不要下载 32 位版本。2017.3 的 Windows 安装包大概在 400MB 左右文件名为ideaIU-2017.3.6.exe旗舰版或ideaIC-2017.3.6.exe社区版。如果你在非官方渠道看到“绿色版”“免安装版”我劝你直接退出宁可花十分钟下载官方包也不要冒着文件被植入风险去省这几分钟。顺便说明一下 2017.3 的小版本2017.3.1、2017.3.2 一直到 2017.3.6都是修复性更新越靠后的版本越稳定。建议直接下最后一个 2017.3.6。2.3 系统要求与x64版本的选择依据IDEA 2017.3 x64 的系统要求是Windows 7/10 64 位、内存至少 2GB推荐 4GB、磁盘剩余空间至少 3GB、显示器分辨率不低于 1024×768。说实话这个要求很低十年前的老办公电脑也能跑。选择 x64 版本的理由有两层第一现代 Windows 系统绝大多数都是 64 位32 位安装包在这种系统上反而需要额外兼容层第二IDEA 本身是内存大户64 位进程可以申请更大的堆内存给 JVM 分配 2GB 堆空间也不会有问题。你要是装 32 位版本进程内存上限被压在 2GB 内跑稍微大一点的项目就会频繁爆出 “OutOfMemoryError: Java heap space”。这里有个细节安装包下载的是 x64 版本但安装完成后你会发现安装目录的bin文件夹里有两个启动脚本——idea.exe和idea64.exe。快捷方式默认指向 64 位版本如果你不小心双击了 32 位的那个可能无法启动或启动后提示 “Cannot load a 64-bit JVM”。遇到这个情况别慌直接换用idea64.exe就好了。3. 一步步完成安装从双击exe到首次启动3.1 安装向导里的每个选项都代表什么双击安装包之后前几步没什么好说的选好安装路径就行。我个人的习惯是不要装在 C 盘默认路径而是改成D:\JetBrains\IntelliJ IDEA 2017.3这样做的好处是重装系统不丢配置而且固态硬盘空间紧张时不会因为 IDE 缓存撑爆 C 盘。注意路径里不要带中文某些老版本插件对中文路径支持不好容易出“无法加载插件”或者“找不到配置文件”的玄学错误。再往下走到安装选项页有这么几项我逐个解释一下64-bit launcher在桌面创建 64 位启动器快捷方式默认勾选建议保留。Update PATH variables (restart needed)把 IDEA 的启动命令加入系统 PATH。这个我一般不勾因为日常很少在命令行里敲idea启动而且改了 PATH 要重启系统才生效没必要麻烦。Create Associations关联.java、.groovy、.kt文件。建议全选。这样双击一个.java文件就能直接用 IDEA 打开体验接近专业文本编辑器。Download JBR或者Install JRE不同小版本显示不同这是询问是否下载 JetBrains Runtime。2017.3 的安装包一般自带 JRE如果提示你额外下载建议下载因为后面运行 IDEA 需要它。选完之后点安装等进度条走完勾选Run IntelliJ IDEA那一步不要急着继续先想好你要不要导入旧配置。如果你电脑上从没装过 IDEA会直接进入新配置界面如果装过其他版本安装器会问你是否导入。我的建议是第一次尝试这个版本选“Do not import settings”开始全新配置。这样你后面的每一步设置都能自己掌控不会出现“该 GUI 主题是上一个版本遗留”“插件不兼容导致无法初始化”这类问题。3.2 IDE内存参数与VMoptions预配置安装完成后先别急着打开写代码。我强烈建议你先把 IDEA 的内存参数改好再启动。说白了IDEA 是基于 JVM 的程序它自己有独立的堆内存配置默认值往往过于保守遇到大项目就频繁 GC 导致卡顿这也就是很多人说的“IDEA 卡得跟幻灯片一样”。2017.3 的配置文件在安装目录下的bin\idea64.exe.vmoptions文件里。我常用的一个低配方案是-Xms256m -Xmx1024m -XX:ReservedCodeCacheSize240m -XX:UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB50 -ea -Dsun.io.useCanonCachesfalse -Djava.net.preferIPv4Stacktrue -Djsse.enableSNIExtensiontrue -Didea.vm.nameidea64如果你内存比较大比如 8GB 以上可以把-Xmx调到 2048m再往高调其实收益不大反而挤占了操作系统缓存。这个老版本用 CMS 垃圾回收器比默认的 G1 更稳启动速度也更快。注意改这个文件必须以管理员身份保存Windows 下文件在Program Files目录里直接在资源管理器里打开编辑往往保存失败。这里有个常见误区改了idea64.exe.vmoptions还是卡很多人会去装各种“优化插件”但真正的问题往往是你同时打开了多个大项目或者项目索引没建完就在写代码。2017.3 首次导入项目时会花几分钟建立索引这时候 CPU 占用高、卡顿都是正常的等索引完成就流畅了。不要用任务管理器看一眼就把 IDEA 杀掉容易损坏索引文件导致后续打开项目反复重建索引。3.3 首次启动导入配置、主题与插件初始化配置好内存双击idea64.exe这时候会进入首次启动向导。它会依次问你三件事是否导入设置、选择主题、是否启用插件。主题我建议选Darcula也就是深色主题。长时间写代码时深色主题对眼睛刺激更小而且这个配色是 IDEA 的标志性外观很多编辑器都抄了它。后面的Create Desktop Shortcut保持勾选Download Featured Plugins那个页面不要急着全选2017.3 的插件市场里部分插件已经停止维护装上反而添乱直接点Skip All跳过需要的插件后面按需单独装。2017.3 的插件市场目前还残留了不少经典插件比如.ignore、Lombok Plugin、Alibaba Java Coding Guidelines阿里规约。记住一点插件安装尽量保持克制。装多了不但拖慢启动速度还会造成右键菜单臃肿甚至引发插件间冲突导致整个 IDE 白屏。我的原则是开发 Java 项目只装 Lombok 和必要的框架插件其他一律按需安装。4. 终于开始写代码新建项目、界面布局与核心快捷键4.1 新建Java项目与Project SDK配置打开 IDEA 后第一个要面对的就是创建或导入项目。新建项目很简单File → New → Project。左边选 Java然后在Project SDK处点New找到你安装的 JDK 目录。如果 SDK 列表里什么都没有大概率是你只装了 JRE 而没装 JDK或者路径选错了——这点我见过太多次装了个精简版 JRE 就以为能开发结果写javac的时候一脸懵。选好 JDK 后还要选模板。如果你是纯 Java 项目不要勾选Create project from template直接点Next。勾选模板有时候会生成多余的Main类框架和模块信息文件对于初学者反而是负担。项目名和保存路径自己定注意路径别带中文和空格。最后建立好项目你会看到 IDEA 自动生成了一个.idea目录里面是 IDE 的本地配置不要手贱去删它删了 IDEA 无法识别项目结构。创建完成后点开Project Structure快捷键CtrlShiftAltS在Project栏目里核对Project SDK和Project language level。这里有个很容易踩的坑language level 设置成 8表示项目可以使用 Java 8 的语法如果你把 SDK 选了 JDK 17但 language level 还是 8那某些新语法比如var代码会直接标红编译也是报错的。2017.3 最多只认识到 Java 9 的 language level所以使用这个版本时直接选 8 就好。4.2 界面布局和几个你一定会用到的工具窗口搞定了项目界面会比较陌生。IDEA 2017.3 的默认布局分四块左侧是 Project 文件树右侧是代码编辑区顶部是导航栏和工具按钮底部是终端、信息、TODO、版本控制等工具窗口的折叠条。有几个工具窗口我建议你一上来就熟悉Project默认Alt1切换看文件和包结构。Structure默认Alt7看当前类的字段和方法大纲跳转特别方便我写老代码找方法时全靠它。Terminal默认AltF12内置命令行不用切到外面敲 maven 命令。Version Control默认Alt9Git/SVN 提交记录都在这里。你在网上可能会看到有人用很多奇奇怪怪的“超级高效布局”教程什么窗口都往屏幕边缘放。我觉得对大多数人来说默认布局不乱动就足够了工具窗口按快捷键呼出和收起比永远钉在界面上清爽得多。保持工具窗口弹出即用、用完即收你的视野能留给代码本身的面积更大。4.3 高频快捷键与代码生成模板快捷键这种东西记住核心的十来个就能横行无忌了。2017.3 的快捷键和后来的版本基本一致如果你是从新版回退到旧版这部分的肌肉记忆还能用操作快捷键说明生成代码 / 构造方法 / setterAltInsert神器不用手敲 getter/setter快速修复AltEnter红波浪线时按它补目标导包、改方法名都靠它格式化代码CtrlAltL统一缩进和空格符合团队规范查找类CtrlN按类名搜跳转飞快查找文件CtrlShiftN按文件名搜查找使用处AltF7看一个方法被谁调用了重构前必做重命名ShiftF6方法、变量、类统一改名强烈推荐提取变量CtrlAltV把魔法值抽成变量提升可读性运行当前类ShiftF10不用手动找运行按钮补全变量名CtrlShiftEnter自动补全代码行尾的分号和大括号代码模板方面2017.3 默认带了一堆 Live Templates输入缩写后按Tab展开。比如在 main 方法里输入psvm就会生成public static void main(String[] args)在控制台打印输入sout生成System.out.println()增强 for 循环输入iter按 Tab可以自动生成一个 Foreach。这些模板在Settings → Editor → Live Templates里都能看到你也可以自己定义。我自己的习惯是把平时经常写的log日志打印模板改成一个固定缩写比如输入logd生成LoggerFactory.getLogger(getClass())每次导入新代码库都能省很多事。老版本支持自定义模板完全不需要为了这么个功能去装插件。5. JavaWeb项目配置实战Tomcat、Maven与常见坑5.1 社区版和旗舰版在JavaWeb支持上的区别这是很多人最关心的部分。IDEA 2017.3 社区版是免费开源的但它的功能边界非常明确只支持 Java SE、JUnit、Maven/Gradle、Git/SVN 等基础功能不包含 JavaEE、Spring、Tomcat 集成的完整支持。具体到 JavaWeb 场景社区版里你找不到Run → Edit Configurations → Tomcat Server这个入口。旗舰版则在安装时就集成了 Application Servers 视图你可以直接配置 Tomcat 的路径然后用一个按钮启动/停止服务器。它对 Spring、MyBatis、JSP/Servlet 都有代码补全和文件跳转支持。如果你要整天写 JavaWeb这两个功能的差距是本质性的。如果你暂时只能用社区版也不是没救。你可以把项目打成 WAR 包手动复制到 Tomcat 的webapps目录再通过 Tomcat 的bin\startup.bat启动。这种方式麻烦但能加深你对部署过程的理解对学习阶段的学生来说反而是个好实践。后来用旗舰版再回头看这些步骤你会更明白 IDEA 帮你做了什么。5.2 Maven项目导入与仓库配置从 Gitee 或 GitHub 拉取项目到 IDEA最常见的方式有两种一种是File → New → Project from Version Control粘贴 Git 地址直接克隆另一种是本地已经有项目文件夹用File → Open选择带pom.xml的根目录IDEA 会识别 Maven 项目并自动下载依赖。2017.3 对 Maven 的支持已经很成熟了。项目导入后右侧会有一个Maven Projects工具窗口里面能看到模块列表和依赖树。这一步有极大概率遇到问题国内网络访问 Maven 中央仓库慢下载依赖一半卡死然后 IDEA 报各种 “Cannot resolve xxx” 的错。解决方法是换阿里云镜像。打开 Maven 的conf\settings.xml在mirrors节点里加上mirror idaliyunmaven/id mirrorOfcentral/mirrorOf namealiyun public mirror/name urlhttps://maven.aliyun.com/repository/public/url /mirror然后在 IDEA 的Settings → Build, Execution, Deployment → Build Tools → Maven里把User settings file指向这个settings.xml。如果项目依赖还是下载不下来建议检查settings.xml里的本地仓库路径是否包含中文IDEA 对中文路径下的 Maven 仓库支持一直不稳定报的错还经常是莫名其妙的 “Unresolved plugin”。5.3 Tomcat运行配置与热部署用旗舰版配置 Tomcat 的步骤很固定Run → Edit Configurations点左上角加号找到Tomcat Server → Local。在Server标签页的Application server处点Configure选择你的 Tomcat 安装目录。Server页的After Launch默认勾选会在启动成功后自动打开浏览器访问首页。Deployment标签页点加号选择Artifact里的 war 包或 exploded war 包。这里有个非常关键的细节部署方式选exploded war还是war。前者会把项目按目录结构展开部署可以支持 JSP 和静态资源的实时更新也就是所谓的热部署后者则是完整的压缩包每次改代码都要重新打包。日常开发一定选 explodedIDE 才能在修改后快速同步文件到 Tomcat 目录。改完 Java 代码后浏览器里刷新页面或者按CtrlF10Update resources就能看到效果不需要重启 Tomcat。如果改了 Java 方法签名、新增了类记得把On frame deactivation设为Update classes and resources这样当 IDEA 窗口失焦时它后台会自动编译同步。实测下来老版本的自动编译没有新版快但也不至于拖慢节奏。别贪图频繁的完全重启重启次数多了你会明显感觉整个开发体验像回到远古时代。5.4 运行调试中的常见问题JavaWeb 项目调试是排查问题的关键手段。2017.3 的断点调试和现在版本差别不大在代码行号左侧点一下就打个断点然后用Debug模式运行程序执行到断点处会自动停下来你可以查看变量值、调用栈甚至直接选中一个表达式按AltF8求值。这里我要专门讲一个细节断点可以拖动。热搜词里有一条是“IDEA java 断点拖动到指定位置忽略不需要的步骤”这指的是你可以在调试会话中把当前断点标记拖到一个新行跳过中间的几个步骤。老版本实现方式是在调试工具栏的Frames面板里选中当前栈帧然后把左侧的断点标记拖到你希望执行的下一行。这个方法在处理循环体内重复代码调试时特别好用不需要改源码就能跳过脏数据引起的报错。调试环节最常见的坑是 Tomcat 启动时报端口被占用。如果8080或8005被已有进程占用Tomcat 会启动失败并抛BindException。解决办法是找到占用端口的程序或者直接改 Tomcat 的conf\server.xml里的端口号IDEA 运行配置里也可以单独指定不同端口。我就是因为这台老电脑上 8080 被一堆杂七杂八的服务占了后来干脆在 IDEA 里把 Tomcat 的端口设成18080项目配置里的访问地址同步改掉从此再也没有跟别人抢过端口。6. 踩坑记录乱码、卡顿、target目录不显示等高频问题排查6.1 中文乱码与文件编码统一在 JavaWeb 项目里乱码一般分两种控制台乱码和页面乱码。2017.3 里控制台乱码多半是因为控制台编码和项目编码不一致。你需要做三件事Settings → Editor → File Encodings里把Global Encoding和Project Encoding都设为 UTF-8Default encoding for properties files也改成 UTF-8。检查项目里的pom.xml是否设置了project.build.sourceEncoding为 UTF-8没有就加上。如果 Tomcat 日志有乱码还要看 IDEA 运行配置里的VM options是否加了-Dfile.encodingUTF-8。我遇到过一种很隐蔽的情况IDEA 里看代码文件全是正常的 UTF-8但编译后运行时的日志或页面乱码后来发现是 Tomcat 安装目录的conf\logging.properties里java.util.logging.ConsoleHandler.encoding默认是 GBK。把这一行改成 UTF-8 再重启就好。这类问题本质上是“编码源头错”而不是“IDE 错”排查时不只要盯着项目本身还要把运行的容器也查一遍。6.2 用vmoptions解决内存不足与卡顿前面说过bin\idea64.exe.vmoptions这个文件这里再详细讲讲卡顿的排查思路。先说现象打开项目后 IDEA 响应缓慢输入代码时高亮卡顿滚动代码像拉锯。如果你用的是 2017.3 且配置不差八成是索引一直在后台跑。2017.3 的索引机制比新版简单但导入大项目时仍然会全量扫描目录。如果你的项目里有一个node_modules或者target目录IDEA 默认会尝试建立索引这就非常浪费。解决办法是右键这些目录选择Mark Directory as → Excluded把不需要索引的目录排除掉。被排除的目录在文件树里会显示为可隐藏状态不会被搜索和索引。如果你已经加了-Xmx2048m还是卡可以检查是否安装了太多无用的插件。在Settings → Plugins里把不需要的插件直接禁用禁用后 IDE 启动速度和内存占用都能明显改善。2017.3 的插件市场里有大量旧插件装了之后不一定报错但会在后台监听各种事件白白消耗 CPU。6.3 target目录明明存在却不显示热搜词里有一条很典型“IDEA 为什么不显示 target 目录但是是存在的”。这个问题的本质不是 target 不存在而是 IDEA 把 target 目录标记为 excluded导致它在 Project 树中被隐藏。正常情况下这不影响编译因为 Maven 构建时编译器会自己往 target 里输出 .class 文件。但如果你要查看打包出来的文件却发现左侧文件树里找不到它就很别扭。解决办法有三种在 Project 视图的文件树上方找到那个齿轮图标展开后勾选Show Excluded Files被排除目录就会以半透明底色显示出来。右键 target 目录 →Mark Directory as → Not Excluded彻底取消排除状态。如果上面两个都不行大概率是 IDE 缓存出错了。执行File → Invalidate Caches / Restart勾选Clear file system cache and Local History后重启让 IDEA 重新扫描目录结构。这个问题的坑在于IDEA 默认排除 target 是有意为之的它不想让你把编译产物当成源码来检索。所以只要你能通过文件管理器访问到 target 里的内容IDE 里不显示就没必要非得改。如果你想看打包后的 WAR 包是否生成完整直接去项目目录下的target文件夹看或者用文件管理器都可以。6.4 代码格式化失效与格式化范围控制“IDEA 代码格式化失效”也是高频搜索词常见原因有三类第一文件被标记为只读比如从版本控制拉取的文件没有写入权限第二项目里配置了 EditorConfig 文件Settings → Editor → Code Style里的部分选项被.editorconfig覆盖了第三格式化时机不对2017.3 里默认用CtrlAltL格式化整个文件如果你光标选中了一段代码它只格式化选中部分很多人以为失效了其实是范围变小了。针对这个问题我建议打开Settings → Editor → Code Style → Java在最上面的Scheme里选一个默认方案。如果你团队里没有统一规范直接用默认方案就行不要频繁修改缩进和空格规则否则格式化后 diff 会刷出来一大堆无意义的变更记录严重影响 Code Review。万一真的被.editorconfig干扰了可以在项目根目录找到.editorconfig文件删除或修改里面和缩进/换行相关的规则。格式化失效还有一个容易被忽略的原因CtrlAltL这个全局快捷键在某些输入法或录屏软件里被占用了。我遇到过因为按键绑定冲突导致格式化完全没有反应的情况打开File → Settings → Keymap搜索 “Reformat Code”看看它的快捷键是否显示为CtrlAltL如果不是或者显示冲突就重新绑定。这个方法也适用于其他快捷键“失灵”的问题。6.5 版本控制、数据库与远程调试的边角问题最后把搜热词里几个边角问题一起收尾。一个是 Git 拉取项目报 “login failed, GitLab versions older than 14.0 are not supported”这是新版 Git 插件对旧版 GitLab 服务端的兼容性限制。IDEA 2017.3 内置的 Git 插件反而没有这个限制因为那个时代 GitLab 都还是 8、9 的时代。如果你在新版 IDEA 上遇到这个报错可以考虑关闭新版 IDEA 内置 GitLab 集成改用 Git 命令行认证或者干脆用 2017.3 处理旧 GitLab 服务器。另一个是“IDEA 打包 docker 镜像”。2017.3 的 Docker 集成其实已经存在在Settings → Build, Execution, Deployment → Docker里配置 Docker 连接然后把项目部署到容器。但老版本的 Docker 功能非常初级只支持简单的镜像构建和运维不支持像新版那样的 Compose 支持。实际工作中我觉得老版本真没必要硬刚 Docker写代码时把 Dockerfile 放在项目里用命令行构建镜像反而更顺手。还有一个数据库脚本导出问题2017.3 的 Database 工具窗口功能比较基础你可以连接数据库、看表结构、执行 SQL但要“导出数据库脚本”最稳妥的方式是用命令行工具mysqldump或者可视化工具如 Navicat 导出不要指望 IDE 给你完整搞定。这个版本的 Database 功能定位就是查询和简单编辑不是专业的数据库运维工具。收尾我用了这么多年IDEA最后的体会说白了IDEA 2017.3 x64 在我心里就像一把用惯了的旧螺丝刀不是最新款也没有高科技涂层加持但只要你拿它拧老项目的那几颗螺丝它反而比新款更趁手——因为它更简单、更不吃资源、没有那么多花里胡哨的后台任务来抢你电脑的注意力。如果你是为了学习编程来装这个版本我建议你把快捷键练熟、把 Debug 玩明白、把 Maven 依赖流搞懂这些基础能力在哪个版本的 IDE 上都是通用的。如果你是被老项目绑着只能用旧版本那就少折腾花活把它稳定地跑起来配合命令行工具处理那些 IDE 管不了的事情效率一样很高。不要为了“用新版”而用新版也不要为了“怀旧”死守旧版选合适自己电脑和项目的工具比什么都重要。
返回列表