1 Star 1 Fork 0

JillLiu / IntelliJ-IDEA-Tutorial

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
index-and-cache.md 3.12 KB
一键复制 编辑 原始数据 按行查看 历史
liutao 提交于 2021-01-11 17:25 . 初始化

IntelliJ IDEA 缓存和索引的介绍及清理方法

在博文「详述 IntelliJ IDEA 的使用界面」中,博主说过这样一句话“对于首次创建或打开的新项目,IntelliJ IDEA 都会创建项目索引,大型项目在创建索引的过程中可能会出现卡顿的现象,因此强烈建议在 IntelliJ IDEA 创建索引的过程中不要动项目。”那么,索引到底是干什么用的呢?在本篇博文中,就让我们一起了解索引的用途,对了,还有缓存。

IntelliJ IDEA 的缓存和索引主要是用来加快文件查询的速度,从而提高各种查找、代码提示等操作的速度,因此索引对 IntelliJ IDEA 的高效性来说,具有至关重要的作用。但是,IntelliJ IDEA 的缓存和索引并不一定总是起到积极的作用,有的时候,反而会因为缓存和索引的损坏,例如突然断电、蓝屏引起的强制关机等等,造成 IntelliJ IDEA 出现一些莫名其妙的问题,例如项目打不开、个性化设置还原等等。现在,大家不用愁了,接下来,就让我们一起看一看如何清理缓存和索引:

file-caches-restart

如上图所示,File下的Invalidate Caches / Restart就是清理缓存和索引的入口,表示“无效缓存或者重新启动”,点击进入如下界面:

warning

  • 标注 1:无效并重启;
  • 标注 2:无效缓存;
  • 标注 3:重新启动;
  • 标注 4:警告提示。

如上图所示,一般建议点击 Invalidate and Restart,这样会清理的比较干净。但是,有一点需要注意,那就是:标记 4 所示的WARNING表示如果我们选择清理缓存和索引,那么 IntelliJ IDEA 的Local History也会被一并清理掉。因此,如果我们的项目没有加入到版本控制,而我们又需要项目文件的历史更改记录,那最好备份下该目录,其地址为C:\Users\当前登录的系统用户名\\.IntelliJIdea\system\LocalHistory

通过上面的方式清除缓存和索引的本质其实就是删除C盘下的system目录下的对应的文件,因此如果我们不用上述的方法,也可以直接删除整个system目录,这样的话,当 IntelliJ IDEA 再次启动项目的时候就会重新创建新的system目录以及对应项目缓存和索引。如果我们遇到了因为缓存或者索引出现问题以至于打不开项目的时候,建议直接删除system目录,一般这样都可以很好地解决我们的问题。

此外,还有一点需要我们注意,那就是:在安装 IntelliJ IDEA 的时候,默认是不启用system目录的,因此想要记录Local History,就得我们手动设置啦!具体如何设置,可以参考「IntelliJ IDEA 安装目录的核心文件讲解」这篇文章。


———— ☆☆☆ —— 返回 -> 史上最简单的 IntelliJ IDEA 教程 <- 目录 —— ☆☆☆ ————

Java
1
https://gitee.com/desertsurge/intelli-j-idea-tutorial.git
git@gitee.com:desertsurge/intelli-j-idea-tutorial.git
desertsurge
intelli-j-idea-tutorial
IntelliJ-IDEA-Tutorial
master

搜索帮助