
打开IntelliJ IDEA你看到的是一个满屏按钮的工具Java写到一半编译报错、运行不起来、依赖拉不下来被环境折腾到怀疑人生。这篇文章不打算讲那些花里胡哨的插件和骚操作就从“创建第一个Java工程项目”这件事入手把IDEA的常用配置和使用技巧一步步拆开拿给你。不管你是刚接触Java还是从Eclipse、VS Code切过来的老手这套流程我都按实际踩过的坑来写保证你看完能顺利跑出第一行Hello World。先说清楚这篇文章能解决什么问题装好了IDEA但不知道从哪下手、新建项目时一堆选项看不懂、运行程序报错不知道去哪查、默认配置用着别扭。这些都是刚上手IDEA最常见的情况。题外话一句如果你还在找所谓的“IDEA特别版安装包”我建议直接放弃IDEA Community版社区版完全够用而且免费。破解版不止有版权风险还经常附带脚本、木马IDEA的授权检测越来越严格用着用着就被封得不偿失。老老实实去官网下个官方版配合社区版或者公司采购的正版授权比什么都安心。1. 写代码之前先把环境这关过了1.1 别急着装IDEA先确认你的JDK很多人卡在第一步不是IDEA装不上而是电脑上压根没有JDK或者装了好几个版本环境变量一团糟。IDEA只是一个编辑器真正能把Java代码编译、运行起来的是JDKJava Development Kit翻译过来就是Java开发工具包。你可以把IDEA理解为“写字的纸和笔”JDK则是“印字的机器”没有后面这台机器写再多字也变不成可运行的程序。JDK的安装有几个点要注意。第一个是版本选择。现在Oracle JDK和OpenJDK在普通开发场景下基本没区别推荐直接用OpenJDK比如Adoptium也就是以前的AdoptOpenJDK编译出的版本免费、长期支持、没有商用授权风险。版本号上建议Java 8、Java 11、Java 17、Java 21这几个LTS长期支持版本里选一个。很多公司老项目还在用Java 8但新上手学习的话Java 17或Java 21更好语法更现代IDEA支持也更完善。如果条件允许直接上Java 21目前的主流框架都兼容。第二个是环境变量。Windows下安装完JDK后需要手动配置两个环境变量JAVA_HOME和PATH。JAVA_HOME指向JDK安装目录比如C:\Program Files\Eclipse Adoptium\jdk-21.0.2.13PATH里加一条%JAVA_HOME%\bin。配置完成后打开命令行窗口输入java -version能打印出版本信息就说明环境正常。提示不要图省事把JDK装在带中文或空格的路径下比如D:\软件\Java\jdk有些老工具不认中文路径后面排查问题会让你崩溃。装到纯英文路径少给自己找事。1.2 IDEA版本怎么选社区版还是旗舰版IDEA有两个主要版本社区版Community和旗舰版Ultimate。很多人一上来就纠结这个我直接说结论学习Java SE、做Java后端开发的基础功能社区版足够了你要用Spring Boot、JavaEE、数据库工具、前端混开这些高级功能才考虑旗舰版。社区版是免费的支持Java、Kotlin、Groovy这些语言也可以装Maven、Gradle插件写基本的Java工程完全没问题。但注意社区版不支持Spring框架的专门支持虽然能通过插件部分弥补、不支持直接连数据库的Database面板需要手动配数据源插件。如果你只是跟着教程写Java基础、数据结构、算法题社区版妥妥的够用。旗舰版是收费的有30天试用期。如果你在公司上班公司购买过授权直接用公司账号激活就行。学生的话用学校邮箱可以在JetBrains官网申请免费的教育授权全系列产品随便用。不要在网上乱找激活码那玩意三天两头被封不说还容易带上恶意脚本。1.3 安装IDEA时的几个细节在官网下载对应系统的安装包Windows下选exe那个双击安装。安装的时候有几个选项值得注意选择安装路径照样避免中文目录勾选“创建桌面快捷方式”和“添加到PATH”这两个后面会用到勾选“将文件夹打开方式加入右键菜单”以后右键文件夹就能直接用IDEA打开关联.java文件可选可不选没必要强求。还有一点IDEA本身是Java程序新版安装包会自带一个JBRJetBrains Runtime所以你电脑上没装JDKIDEA也是能打开的。但打开归打开你新建工程写代码的时候编译器还是会去找系统里的JDK。所以JDK装没装IDEA自己能跑不代表万事大吉。2. 第一次打开IDEA先把这些配置调好2.1 首次启动的设置引导别一路狂点下一步第一次打开IDEA它会弹出一个“Complete Installation”的选择框问你是否要导入之前版本的配置。如果是新装直接选“Do not import settings”就好。接着是主题选择Light白和Darcula黑二选一这个后面在设置里也能改选哪个都不影响使用。真正值得注意的是后面让你“安装插件”的步骤。IDEA默认会推荐一堆插件但建议你这次先别装太多。初学阶段保持干净最好后面按需再装。否则新手容易陷入“装插件半小时写代码五分钟”的怪圈一步步点过去先进入界面最关键。进入主界面后别急着新建项目先把几个关键配置项调好后面省事很多。2.2 全局JDK配置让所有工程用同一个JDK打开IDEA后按快捷键CtrlAltS进入设置界面macOS是Cmd,左侧搜“JDK”或者找到Build, Execution, Deployment - Compiler - Java Compiler这里能看到当前工程的字节码版本但更关键的是在File - Project Structure快捷键CtrlShiftAltS里配置。Project Structure这个窗口你会发现有Project、Modules、Libraries、Facets、Artifacts好几栏。第一次看容易懵我就挑最常用的跟你说。在Project标签页下SDK这一项点击新建选择你的JDK安装路径指定到jdk-21这样的目录Language Level选择对应的版本比如21。这样设置完之后整个工程的编译运行都会基于这个JDK。2.3 编码、字体、快捷键这些基本盘进到设置里的Editor - File Encodings把Global Encoding、Project Encoding和Default encoding for properties files三项全部改成UTF-8。别小看这个设置Java源文件只要编码不一致中文字符串就有可能变成乱码。到后面跟同事协作、在Linux服务器上部署字符集问题会反复找上门。提前统一UTF-8是最便宜的一种防坑手段。然后是字体。IDEA默认字体在低分辨率屏幕上偏小看着累。在Editor - Font里把字体调成18或者20这个看个人别调太大代码一屏显示的行数就少了推荐字体是JetBrains Mono或者Consolas等宽字体在代码里对齐效果好。如果你经常看英文注释这个体验会好不少。快捷键这块默认的Keymap是Windows风格对大部分从Eclipse过来的人可能需要适应一下但建议直接练熟IDEA默认键位就好不要特地去改成Eclipse风格。网上很多教程的手速肌肉记忆都是IDEA默认键位的换了反而看谁的教程都对不上。后面我列一个高频快捷键表你照着练就成了。3. 创建第一个Java工程跟着做就行3.1 新建工程的完整流程准备就绪开始正式创建第一个Java工程项目。在IDEA欢迎页或主界面上点New Project会弹出一个向导窗口。窗口左侧列了一堆项目类型Java、Maven、Gradle、Spring Boot、Jakarta EE等等。新手建议选Java或者选Maven也行但那时你还没装Maven先选纯Java更简单点之后顶部会出现Project SDK下拉框如果之前配置过全局JDK这里会自动选上没选上的话手动选到对应JDK版本。再往下有Build System选项IntelliJ、Maven、Gradle三个可选。第一次创建纯Java项目选默认的IntelliJ内置构建就行不牵扯额外工具等以后学了Maven再转过去也很顺。接着填项目信息Name项目名比如my-first-java-project建议小写字母加横线不要用中文。Location项目保存路径同样纯英文路径。Create Git repository如果你知道Git是什么并且想用可以勾选不知道就忽略不影响的。点击CreateIDEA会花几秒钟初始化工程结构。第一次创建成功你会看到左侧Project面板里有一棵目录树这就是你的第一个Java工程。3.2 认识一个Java工程的标准目录结构工程建好后左侧Project面板默认展示项目的文件结构。比我第一次看的时候也懵src是什么out又是什么我一个个说给你听。一个最简单的Java工程包括.ideaIDEA的配置目录里面存的是这个工程专属的设置比如编码、SDK版本、运行配置等。不用手改也不建议提交到Git。src源码目录你的Java代码全部放在这下面。out编译输出目录IDEA把编译好的.class文件放到这里不用管它。项目名.imlIDEA的模块配置文件记录模块相关信息同样不用管。在src里面你可以直接新建Java类。但实际开发中一般先建包Package。可以这样理解包就是文件夹用来归类管理Java类。比如你写两个类都在一个目录里叫TestOne和TestTwo文件名没问题但如果类多了比如有100个测试类全部摊在一个目录里找起来极度痛苦。所以建包把相同功能的类放一起。右键src选New - Package输入com.example.firstproject。这种域名倒序形式的包名是Java界的惯例能有效避免类名冲突。然后在包上右键选New - Java Class输入HelloWorld注意类名首字母大写这是Java命名规范。这时候你看到的HelloWorld.java文件就是你的第一个Java代码文件。3.3 写代码、运行、查看结果把下面的代码敲进去注意一个字符都不要多、不要少尤其是大括号和分号package com.example.firstproject; public class HelloWorld { public static void main(String[] args) { System.out.println(Hello, World!); } }写完之后你会看到IDE左侧出现一个绿色的三角形按钮这是“运行”按钮。点击它或者把光标放在main方法里按CtrlShiftF10IDEA会先自动编译这个类然后在一个新的终端窗口里运行。如果一切顺利底部Run窗口会显示一行Hello, World!看到这个输出恭喜你的第一个Java工程就正式跑通了。注意如果在运行按钮旁边有报错的红线鼠标移上去看提示一般是三种情况包名没对应目录和package声明不一致、类名和文件名不一致、JDK没选对。这三种我现在说出来你后面刷题时会反复遇到。4. 把这些常用配置调好后面写代码能省一半时间4.1 把Maven装明白依赖管理不再玄学刚跑通HelloWorld的新手可能觉得Maven完全没必要反正自己写代码不需要引入第三方库。但等你开始用第三方库比如操作JSON、连MySQL、写单元测试Maven就变成必需品了。Maven是Java项目的“包管理器”它负责下载和管理项目依赖的jar包替代你手动去网上下jar包再添加到classpath这种原始操作。Maven的安装和配置也很简单。去官网下载apache-maven的二进制包注意选apache-maven-3.9.x-bin.zip不要选src源码包解压到纯英文目录然后配置环境变量MAVEN_HOME指向解压后的目录再把%MAVEN_HOME%\bin加到PATH里。命令行输入mvn -v验证。但是Maven默认从中央仓库下载依赖服务器在国外国内网络下经常慢到怀疑人生。这个问题的解决方案是配置国内镜像也就是把默认仓库地址换成阿里云、华为云等提供的镜像仓库。打开Maven安装目录下conf/settings.xml在mirrors标签内添加mirror idaliyunmaven/id mirrorOfcentral/mirrorOf name阿里云公共仓库/name urlhttps://maven.aliyun.com/repository/public/url /mirror保存后在命令行执行mvn help:system如果能顺利下载插件不报错说明镜像配置成功。然后在IDEA里CtrlAltS打开设置搜Maven把Maven home path指向你刚解压的Maven目录再在User settings file里选中刚才改过的settings.xml。这样IDEA里的Maven就会自动走国内镜像下载依赖速度会快非常多。4.2 高频快捷键24小时敲代码效率翻倍IDEA的强大一半靠快捷键另一半靠重构和代码提示。我整理一张平时最常用的快捷键表建议你贴显示器旁边一周左右就能形成肌肉记忆。功能Windows/Linux快捷键macOS快捷键运行当前类CtrlShiftF10ControlShiftR显示可运行目标AltShiftF10ControlOptionR自动补全代码CtrlSpaceControlSpace万能搜索文件/类/符号双击Shift双击Shift查找类CtrlNCommandO查找文件CtrlShiftNCommandShiftO全局搜索文本CtrlShiftFCommandShiftF跳转到定义CtrlBCommandB查看实现类CtrlAltBCommandOptionB重命名重构ShiftF6ShiftF6快速修复/导入类AltEnterOptionEnter代码格式化CtrlAltLCommandOptionL代码注释/取消注释Ctrl/Command/全部折叠/展开CtrlShift加号 / 减号CommandShift加号 / 减号新手最容易忽略的是AltEnter。当你的代码里出现红波浪线很多情况下把光标放到波浪线上按一下这个快捷键IDEA会直接给你修复建议比如导入缺失的类。学会用这个键写代码的顺畅度会立刻上一个台阶。还有一个特好用的功能叫“增量搜索”按两次Shift弹出搜索框直接搜你要找的类、文件、变更不用再一级级展开目录树。4.3 用Live Templates把常用代码模板化写代码多了你会发现有些代码块每次都一样System.out.println、main方法、for循环、try-catch异常处理。IDEA的Live Templates功能可以帮你把这些代码片段变成“缩写”输几个字母就能展开一整段。打开设置 -Editor - Live Templates右侧点加号选1. Template Group新建一个自己的分组比如myjava。然后在分组下新建TemplateAbbreviation填soutDescription填println语句Template text填System.out.println($END$);定义变量$END$表示展开后光标停留的位置。然后在Define里勾选Java生效范围。保存后在Java文件里输入sout按Tab就能直接展开成System.out.println();并把光标放进括号里省去敲一长串的时间。IDEA其实默认就带了很多好用的Live Templates比如在主方法里输入main按Tab能展开public static void main(String[] args)输入psvm同样能展开主方法。把这些缩写记熟写代码的手速能比别人快一截。5. 新手最容易踩的坑我一个个排查给你看5.1 JAVA_HOME不生效明明配了却报“不是内部或外部命令”这个问题十个人里有八个会碰到。配置完JAVA_HOME和PATH后新开的命令行窗口依旧提示java不是内部或外部命令。原因多半是旧的环境变量缓存或者PATH里顺序不对。Windows下打开新命令行窗口前配置的是系统环境变量但是旧的命令行进程还保留着旧环境所以要新开窗口如果新开窗口还是不行检查一下是不是PATH里写成了%JAVA_HOME%bin少了反斜杠或者JAVA_HOME路径末尾带了个分号。还有一种情况是你电脑里装过其他JDK或JRE它们在PATH里排在了前面。在命令行输入where java就能看到到底命中的是哪个路径。5.2 控制台输出中文乱码怎么调都没用中文乱码基本是编码不一致导致的。前面说过的File Encodings全部设为UTF-8之外还要注意IDEA的编译选项。打开Build, Execution, Deployment - Compiler - Java Compiler找到Additional command line parameters加上-encoding UTF-8强制编译时用UTF-8。另外运行窗口如果乱码回到设置里搜Console找到Default encoding改成UTF-8。Windows环境下有时候还会遇到系统区域设置的问题在“控制面板 - 区域 - 管理 - 更改系统区域设置”里勾选“Beta版: 使用Unicode UTF-8提供全球语言支持”然后重启乱码问题基本能根治。不过这个设置对老软件有些兼容影响建议只在乱码实在解决不了的时候用这一招。5.3 Maven依赖下载慢或卡住不动前面让你配了阿里云镜像这个能解决90%的问题。但如果配了镜像仍然卡住第一步要确认IDEA里用的Maven确实是配过镜像的那个settings.xml。IDEA的Maven设置和全局Maven未必是同一个经常有人在命令行里配好了Maven但IDEA里还在用内置的Maven。所以在IDEA设置里手动指定Maven home path和User settings file后点一下Maven - Reload All Projects重新加载。还有一个小技巧Maven下载到一半断了会留下.lastUpdated后缀的文件导致下次下载一直失败。打开本地仓库目录默认在C:\Users\你的用户名\.m2\repository搜索并删除所有.lastUpdated结尾的文件然后重新reload。这个命令可以在项目根目录执行# 删除所有.lastUpdated结尾的缓存文件Windows PowerShell里执行 Get-ChildItem -Path $env:USERPROFILE\.m2\repository -Recurse -Filter *.lastUpdated | Remove-Item -Force5.4 工程目录打不开源码提示“Source root configuration”有时候你从别人那里拷贝一个工程用IDEA打开后发现代码文件夹不是蓝色但包名是浅色的运行的时候提示无法识别源码根目录。这是因为工程缺少源码目录标记。右键src目录选Mark Directory as - Sources Root把目录标记成源码根目录就行了。同理如果是资源文件目录比如resources要标记成Resources Root。这问题在Maven和Gradle工程里尤其常见因为它们的默认目录结构是src/main/java从IDEA里新建的Maven项目会自动标记但手改目录结构或导入别人的工程时就容易丢。5.5 常见报错速查表下面这张表是我在实际使用里碰到的高频报错基本都是新手期必见的报错信息含义解决方案Error: java: invalid source release: 17编译级别和JDK版本不匹配Project Structure里把Language Level调到对应版本Cannot resolve symbol xxx找不到某个类或方法AltEnter导入类检查Maven依赖是否下载完整java: 程序包xxx不存在依赖没有进入classpath右键项目 - Maven - Reload Project或刷新GradleClassNotFoundException / NoClassDefFoundError运行期找不到类检查Artifacts配置、依赖是否打包进运行时classpathPort 8080 was already in use端口被占用换个端口或任务管理器结束占用进程找不到或无法加载主类编译后的类文件路径不对右键运行主类或重新编译整个工程Lombok生成的getter/setter找不到lombok依赖或注解处理没生效确认依赖存在开启设置里的Annotation Processing这里的Cannot resolve symbol可以说是最高频的一个。新手导入别人的Maven项目后IDEA右侧会提示Maven projects need to be imported一定要点Enable Auto-Import让IDEA自动拉取依赖。拉取过程中如果网络卡住就会出现一堆红色Cannot resolve。这时候不要慌先把网络问题解决了再reload基本就能好。6. 第一个工程跑通之后建议往这几个方向继续扩展HelloWorld跑通了只是万里长征第一步。我刚跑通的时候也觉得一切都好但后来发现自己连“把Java程序打包成可运行的jar”都不会到部署的时候那叫一个手足无措。这里顺手给你三个方向作为后续学习路线首先是学会把工程打成jar包。在IDEA里打开File - Project Structure - Artifacts点加号选JAR - From modules with dependencies选择主类点OK。然后点菜单栏Build - Build Artifacts - BuildIDEA会在out/artifacts目录下生成一个jar文件。在命令行执行java -jar 包名.jar就能运行。这个过程看着简单但刚接触的时候很容易踩到“明明选了主类还是提示没有主清单属性”的坑原因大部分是Artifacts配置里没选主类重新配置一次就好。第二个方向是学单元测试。Java最常用的测试框架是JUnitIDEA里创建测试类非常方便在要测试的类名上按AltEnter选择Create TestIDEA会自动生成测试骨架代码。加上JUnit依赖后就能跑测试。学会写测试对你理解Java代码逻辑的帮助会非常大。第三个方向是学会用调试器。在代码左侧行号旁边单击会出现一个红点这是断点。点绿色的“Debug”按钮运行程序会停在断点处你可以逐行执行、查看每个变量的值。这套调试能力是IDE的精髓也是你以后排查Bug最依赖的技能。关于IDE本身的路径再往后可以深入学习IDEA的代码重构、版本控制集成、数据库面板这些高级功能但现阶段先把工程创建、运行、构建、调试这几件事吃透你就已经具备了独立开发Java程序的基本能力。最后分享一点我的体会。很多初学者特别喜欢到处找“最牛配置”“最强教程”结果时间全花在折腾IDE上代码反而没写几行。IDEA说到底就是工具它的价值是让你把注意力集中在业务逻辑和算法本身上。所以我的建议是这篇文章里的配置照着做一遍就够了剩下的时间请去写代码。多写多跑多调试比整天研究IDE的隐藏功能有用得多。