1. 前言
和其他工具一样,笔者不喜欢下载安装版的工具,通过ZIP版及配置环境变量就挺好。本文转化为工具书,累计平时的各类使用记录
2. 前提依赖软件
使用IndellJ需要先安装配置JDK及Maven。在环境变量中配置过JAVA_HOME 和 MAVEN_HOME
JDK的配置笔者没做笔记,Maven的配置笔记可以点击这里
3. 初始下载及运行
直接到官网可以下载,目前官方提供了2个版本:Ultimate 和 Community ,中文翻译为:旗舰版 和 社区版
旗舰版的需要收费,当然可以去破解。但笔者比较尊重版权,所以尽量不去做侵害版权的事情,正好也有免费的社区版,所以…
在官网的下载页面的Communicty,选择Windows(.zip),即可直接下载
下载完成后,笔者解压到了:D:\Tools\IntelliJ-2020.1.2
运行文件是:D:\Tools\IntelliJ-2020.1.2\bin\idea.bat,双击就可以运行了。
首次运行会出现使用声明,点击I confirm, Continue就行了
接着是使用数据共享声明,既然使用了免费版,笔者选择了发送数据
然后一直按右下角的按钮,一直见到以下页面,算是安装成功了。之后可以直接双击D:\Tools\IntelliJ-2020.1.2\bin\idea.bat 打开软件
4. 基础配置
4.1 配置Maven
在IntelliJ中配置Maven,也依赖于Maven这个工具本身已经配置好了,请参照2. 前提依赖软件把Maven配好,然后才能在IntelliJ中进行配置。
配置的路径在:菜单 File > Settings > Build, Excution, Deployment > Build Tools > Maven (也可以在Setting弹出窗口中直接搜索Maven)。
在以下Maven home directory 中,选择Maven路径(IntelliJ会自动读取环境变量中MAVEN_HOME的路径),
未配置前。
配置后(Maven路径和本地仓库路径是自定义的)
其他配置说明
配置项 | 说明 |
---|---|
勾选 Always update snapshots | 如果不勾选这个选项,在操作pom添加dependency的时候,maven不会自动去远程仓库更新,导致Intellij显示红色错误。勾选之后,保存pom时,Maven会自动到远程仓库更新没有的依赖包到本地 |
4.2 配置JDK
有几个地方需要配置JDK
- File -> Settings->Build -> Compiler ->Java Compiler
File ->Project Structure
5 插件安装
社区版基本上没有插件,所以小巧,所以需要自行安装个人喜欢的插件。可以在以下位置安装各类插件
5.1 安装插件统一位置
插件进入位置为,菜单栏:File > Settings > Plugins
5.2 SpringBoot
要安装springbook,在搜索栏输入Spring Assistant,再点install即可。
如果在搜索栏搜不到Spring Assistant,那就需要从官网下载
https://plugins.jetbrains.com/
也是输入Spring Assistant查找
但是官网的Spring Assistant能支持的最后一个版本是2019.3.5,所以如果要安装本地的Spring Assistant,只能在官网下载ideaIC-2019.3.5版本。
小声的说,其实这应该是官方故意的,参考官方说明,新出的社区版是不包含Spring Assistant的,见官方说明
https://www.jetbrains.com/idea/features/editions_comparison_matrix.html
5.3 Tomcat
5.3.1 intelliJ中查找及安装Tomcat插件
搜索tomcat,以下图标就是,有些版本名字是Smart Tomcat,有些是Tomcat Server,记得图标是那只猫就行
5.3.2 下载及配置Tomcat
第一步只是在IntelliJ中安装插件,真正的Tomcat主体需要自行下载,参考这篇文章
5.3.3 在IntelliJ中配置使用Smart Tomcat
因为笔者安装的是smart tomcat插件,以下截图为smart tomcat的,如果是其他的tomcat插件,会有些不同。
入口:右上的一排按钮,红色框是配置之前,选项都是灰的。需要点蓝色进入。
具体路径:Add Configuration > Templates > Smart Tomcat
配置非常简单,只需要选择tomcat路径,其他的按默认就行,搞定。
7. 工具设置
8. 好用的快捷方式
8.1 快速跳转至调用的方法或类
在代码中,看到调用的类或方法,按着Ctrl,用鼠标点方法名或类名,会自动打开懂爱调用的类或方法
8.2 查看当前文件的所属路径及在左边栏跳转到该位置
在学习项目时,看一个文件,想看当前包或关联包下的其他文件,就需要定位到该文件的路径位置,如下图,可以快速打开文件所在路径
9. 常见错误
更多Maven编译的通用错误,见笔者另一篇文章,这里只记录和Idea相关的错误。
9.1 OutOfMemoryError - 编译时
在编译项目的时候,遇到这个错误,这是因为分配的内存不够,需要配置足够多的内存。
路径如下:
File > Settings > Build, Excution, Deployment > Compiler
设定 Build Proces heap size = 2048, 或4096,或更高的
9.2 Maven没有自动下载
一般来说,rebuild项目,会出发maven自动下载,但如果没有自动下载依赖包,跑到pom里也可以看到引用错误。
解决方案:在当前文件,直接右键 > Maven > Reload project。会看到底栏有maven processing的信息,点开能看到正在下载各类依赖包了。
9.3 Git插件假同步(没有同步也没报错)
在工作的时候,遇到一个问题,就是在remote那里不断的同步,没有报错,看提示也是完成了,但就是没有把远程的改动同步下来。后来点了Git branches的刷新按钮,才发现与Git的连接不知道什么时候已经断开,需要重新输入用户名密码才能连接上。
下图中红色框内所有同步操作都没报错,也不执行。
蓝色框中点刷新,会提示输入用户名密码,之后恢复正常
9.4 快速查找Ctrl+Shift+F不生效
Intellij中的快速查找非常好用,笔者之前用得挺好的,但在一个新装的系统中突然失效了,无法用快捷键调出来,用了好长一段时间都是从菜单调出。后来聊天跟一个朋友说起,他提醒是不是开了中文输入法,这个快捷键会冲突,把输入法换成英文就好。然后就真的解决了…我想起几年前确实也知道,看来好久不用了是会忘的,那就写成工具书记录吧。
9.5 Maven install没错,但run/build出现引用错误
如果出现这种情况,主动打开项目文件列表,也会看到一些java class会标红,点进去看会看到有一些Package import提示没有找到。
背后的原因可能是idea的缓存问题,可能有一些真实存在的jar没有通过install包含进来。
解决方案:
在Maven的小窗口,选择reload All Maven Project即可。
9.5.1 Error injecting constructor, java.lang.NoSuchMethodError:
见到上面的Error, 说明Maven 的版本和现在的source code 不匹配。笔者原本的maven 是3.8.6, 换成3.8.2后,问题解决
10. 其他
10.1 如何使用有多repositories的项目
笔者有一个项目,有60+ repositories,且根目录是没有pom的,那些pom是在每个repo下。架构师称这是因为要做微服务,每一个repo都是一个微服务,可以单独启动。然后团队是使用eclipse的,他们都是单独起服务。
而我是需要看整个项目,学习一些核心逻辑。如果单个repo打开,是可以单独编译的,但没理由我打开60+个intellij窗口吧…
所以直接从根目录打开,然而发觉整个工具找不到Maven入口,凌乱。后来得到高人指点,需要打开每个repo,在pom.xml上右键,拉到最下面,选择add as Maven project。这些项目就会被加到maven窗口。在Maven窗口就可以通过install来加载依赖了。