Android环境下IDE内部错误及索引存根过期问题咨询
解决Android IDE内部错误与索引存根过期问题
你遇到的是Android开发环境里典型的IDE索引异常问题,具体会触发IDE内部错误,同时抛出Outdated stub in index的提示,对应的错误详情如下:
Outdated stub in index: jar://C:/Users/Lenovo/.gradle/caches/modules-2/files-2.1/com.android.tools.build/gradle/3.1.1/d0752c46bc1c728ce5294c31838fe5ae4bd36f2f/gradle-3.1.1-sources.jar!/com/android/build/gradle/TestedExtension.java null, doc=null, docSaved=true, wasIndexedAlready=true, queried at 1523337067209 indexed lengths={chars=242, bytes=252} doc length=-1 file length=7618
下面是几个实际开发中常用的修复步骤,按优先级尝试:
1. 清理IDE缓存并重启
这是解决这类索引问题最快速的办法,缓存损坏是常见诱因:
- 点击IDE顶部菜单栏的
File→Invalidate Caches... - 在弹出的窗口里勾选
Invalidate and Restart,等待IDE自动重启并重建索引
2. 删除Gradle本地缓存
错误提示明确指向了Gradle缓存里的过期存根,手动清理对应目录能彻底解决缓存过期问题:
- 先关闭IDE,找到路径
C:/Users/Lenovo/.gradle/caches - 可以直接删除整个
caches文件夹,或者精准删除modules-2/files-2.1/com.android.tools.build/gradle/3.1.1这个子目录 - 重新打开项目,IDE会自动重新下载并构建Gradle依赖缓存
3. 重新同步并重建项目
有时候只是Gradle同步不彻底导致索引异常:
- 在IDE右侧的
Gradle面板中,点击顶部的刷新图标(标注为Refresh all Gradle projects) - 同步完成后,点击
Build→Rebuild Project,让IDE重新生成所有索引文件
4. 升级Gradle版本(长期解决方案)
你当前使用的Gradle 3.1.1版本比较老旧,很可能和新版IDE存在兼容性问题:
- 打开项目根目录下的
build.gradle(Project级别的配置文件) - 修改
com.android.tools.build:gradle的版本号为当前IDE推荐的版本(比如Android Studio Arctic Fox对应Gradle 7.0+,Bumblebee对应7.1+) - 同步项目,IDE会自动下载对应版本的Gradle,完成后重建项目
内容的提问来源于stack exchange,提问作者L Ryan 777
相关产品推荐
相关产品推荐

