Android Studio

前言

最近更新完 Android Studio 之后,发现莫名其妙的经常很卡。通过任务管理器查看Studio竟然一直持续CPU使用率在 95% 以上, What the Fk!!

什么情况啊!

首先确认,当前Studio没有运行下载,没有打包,没有开模拟器,也没什么正在执行的任务。
最后找了半天发现 Analysis… 在持续运行。。。
很疯狂的运行。。。

Android Studio 版本

Android Studio Arctic Fox | 2020.3.1 Patch 3
Build #AI-203.7717.56.2031.7784292, built on October 1, 2021
Runtime version: 11.0.10+0-b96-7249189 amd64
VM: OpenJDK 64-Bit Server VM by Oracle Corporation
Windows 10 10.0
GC: G1 Young Generation, G1 Old Generation
Memory: 1280M
Cores: 4
Registry: external.system.auto.import.disabled=true
Non-Bundled Plugins: GsonFormatPlus, Dart, org.jetbrains.kotlin, io.flutter

Log

目测肯定是有问题啊。
咱们先找Log日志看看。

  • 日志获取方式
    Help >> Show Log in Explorer
  • 日志路径
    C:\Users\CrazyApes\AppData\Local\Google\AndroidStudio2020.3\log\idea.log

错误日志如下


2021-12-20 14:45:41,225 [ 324567]  ERROR - aemon.impl.PassExecutorService - Android Studio Arctic Fox | 2020.3.1 Patch 3  Build #AI-203.7717.56.2031.7784292
2021-12-20 14:45:41,225 [ 324567]  ERROR - aemon.impl.PassExecutorService - JDK: 11.0.10; VM: OpenJDK 64-Bit Server VM; Vendor: Oracle Corporation
2021-12-20 14:45:41,225 [ 324567]  ERROR - aemon.impl.PassExecutorService - OS: Windows 10
2021-12-20 14:45:41,226 [ 324568]  ERROR - aemon.impl.PassExecutorService - Plugin to blame: Kotlin version: 203-1.6.10-release-923-AS7717.8
2021-12-20 14:45:41,227 [ 324569]  ERROR - aemon.impl.PassExecutorService - Last Action: EditorEnter
2021-12-20 14:45:42,160 [ 325502]  ERROR - aemon.impl.PassExecutorService - ContentElementType: ManifestFile; file: ManifestFile:MANIFEST.MFBoolean.TRUE.equals(getUserData(BUILDING_STUB)) = falsegetTreeElement() = Element(ManifestFile)vFile instanceof VirtualFileWithId = trueStubUpdatingIndex.canHaveStub(vFile) = false
java.lang.AssertionError: ContentElementType: ManifestFile; file: ManifestFile:MANIFEST.MFBoolean.TRUE.equals(getUserData(BUILDING_STUB)) = falsegetTreeElement() = Element(ManifestFile)vFile instanceof VirtualFileWithId = trueStubUpdatingIndex.canHaveStub(vFile) = falseat com.intellij.psi.impl.source.PsiFileImpl.calcStubTree(PsiFileImpl.java:976)at com.intellij.psi.stubs.StubProcessingHelperBase.checkType(StubProcessingHelperBase.java:91)at com.intellij.psi.stubs.StubProcessingHelperBase.processStubsInFile(StubProcessingHelperBase.java:61)at com.intellij.psi.stubs.StubIndexImpl.lambda$processElements$2(StubIndexImpl.java:291)at com.intellij.psi.stubs.StubIndexImpl.processElements(StubIndexImpl.java:327)at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:105)at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:93)at org.jetbrains.kotlin.idea.stubindex.KotlinFileFacadeClassByPackageIndex.get(KotlinFileFacadeClassByPackageIndex.kt:19)at org.jetbrains.kotlin.idea.caches.resolve.IDEKotlinAsJavaSupport$getFacadeClassesInPackage$facadeFilesInPackage$1.invoke(IDEKotlinAsJavaSupport.kt:55)at org.jetbrains.kotlin.idea.caches.resolve.IDEKotlinAsJavaSupport$getFacadeClassesInPackage$facadeFilesInPackage$1.invoke(IDEKotlinAsJavaSupport.kt:53)at org.jetbrains.kotlin.idea.util.application.ApplicationUtilsKt.runReadAction$lambda-0(ApplicationUtils.kt:17)at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:877)at org.jetbrains.kotlin.idea.util.application.ApplicationUtilsKt.runReadAction(ApplicationUtils.kt:17)at org.jetbrains.kotlin.idea.caches.resolve.IDEKotlinAsJavaSupport.getFacadeClassesInPackage(IDEKotlinAsJavaSupport.kt:53)at org.jetbrains.kotlin.asJava.LightClassUtilsKt.findFacadeClass(lightClassUtils.kt:58)at org.jetbrains.uast.kotlin.KotlinInternalUastUtilsKt.getContainingLightClass(kotlinInternalUastUtils.kt:89)at org.jetbrains.uast.kotlin.KotlinConverter.getLightClassForFakeMethod(KotlinConverter.kt:479)at org.jetbrains.uast.kotlin.KotlinConverter.convertDeclaration(KotlinConverter.kt:428)at org.jetbrains.uast.kotlin.KotlinConverter.convertDeclarationOrElement(KotlinConverter.kt:488)at org.jetbrains.uast.kotlin.KotlinUastLanguagePlugin.convertElementWithParent(KotlinUastLanguagePlugin.kt:67)at org.jetbrains.uast.UastFacade.convertElementWithParent(UastContext.kt:68)at org.jetbrains.uast.UastContextKt.toUElement(UastContext.kt:111)at com.intellij.codeInspection.apiUsage.ApiUsageUastVisitor.visitSimpleNameReferenceExpression(ApiUsageUastVisitor.kt:80)at org.jetbrains.uast.kotlin.KotlinUSimpleReferenceExpression.accept(KotlinUSimpleReferenceExpression.kt:47)at com.intellij.uast.UastVisitorAdapter.visitElement(UastVisitorAdapter.java:48)at org.jetbrains.kotlin.psi.KtElementImpl.accept(KtElementImpl.java:54)at com.intellij.codeInspection.InspectionEngine.acceptElements(InspectionEngine.java:66)at com.intellij.codeInspection.InspectionEngine.createVisitorAndAcceptElements(InspectionEngine.java:57)at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.runToolOnElements(LocalInspectionsPass.java:311)at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.lambda$visitPriorityElementsAndInit$4(LocalInspectionsPass.java:270)at com.intellij.util.AstLoadingFilter.forceAllowTreeLoading(AstLoadingFilter.java:156)at com.intellij.util.AstLoadingFilter.forceAllowTreeLoading(AstLoadingFilter.java:148)at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.lambda$visitPriorityElementsAndInit$5(LocalInspectionsPass.java:268)at com.intellij.util.AstLoadingFilter.disallowTreeLoading(AstLoadingFilter.java:127)at com.intellij.util.AstLoadingFilter.disallowTreeLoading(AstLoadingFilter.java:116)at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.lambda$visitPriorityElementsAndInit$6(LocalInspectionsPass.java:268)at com.intellij.concurrency.ApplierCompleter.execAndForkSubTasks(ApplierCompleter.java:136)at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1146)at com.intellij.concurrency.ApplierCompleter.lambda$wrapInReadActionAndIndicator$1(ApplierCompleter.java:92)at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:658)at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:610)at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:65)at com.intellij.concurrency.ApplierCompleter.wrapInReadActionAndIndicator(ApplierCompleter.java:104)at com.intellij.concurrency.ApplierCompleter.lambda$compute$0(ApplierCompleter.java:83)at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:172)at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:189)at com.intellij.concurrency.ApplierCompleter.compute(ApplierCompleter.java:83)at java.base/java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:746)at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

解决办法

  • 升级或者重装 Android Studio
    这是万能大法。
    然而,我还是想弄明白为啥,所以还没急着升级,先观察一波。
  • 有人遇到说是 org.jetbrains.kotlin 的问题
    这个是在 Stack Overflow 中看到的。
    提问者也是卡住了,通过升级 org.jetbrains.kotlin 解决问题。
    如文章尾部的参考链接。
    我尝试了一下,会好转。
    我的 kotlin1.6.0 升级到了 1.6.10
    虽然显示 Performing Analysis,但是确实不会反复执行了,只是感觉似乎一直未执行完毕。
  • Flie >> Invalidate Caches/Restart >> Invalidate Caches/Restart
    可能是 plugins 插件出现了问题。
    这里可以考虑清除 Studio 缓存,然后重启。
    这招也接近万能大法了。
    可以解决很多类似问题。
  • 删除缓存 c:/Users/me/AppData/Local/Google/AndroidStudio4.2 (win10)
    这条也是在 Stack Overflow 中看到的。点我看
    不过这篇中更多的推荐是修改Kotlin版本
    不过也可以作为一种尝试记录,都不行的时候,可以试试删这个缓存

个人尝试

由于我是kotlin升级和 Invalidate Caches/Restart 同时做的,不太确定哪个具体生效的。
个人倾向是后者,错误原因可能还是插件的问题。

其它

日志错误尚未分析。
有相关经验的大佬可以在评论区指导一下。

参考文献

https://stackoverflow.com/questions/68113077/how-to-resume-a-stuck-code-analysis-in-android-studio
https://stackoverflow.com/questions/64984549/android-studio-stuck-at-analyzing

Android Studio Download

Android Studio 常见问题

AndroidStudio Kotlin Analysis 卡住(无限Performing...)相关推荐

  1. Kotlin Weekly 中文周报 —— 16

    Kotlin 开发中文周报 文章 Android 开发者的一些实用技巧.(github.com) Ravindra 在 DevfestAhm 2017 的演讲. 像 Kotlin 的专家一样测试 .( ...

  2. t–sql pl–sql_T-SQL for DBA –使用T-SQL进行快速数据分析的三种方法

    t–sql pl–sql 背景 (Background) As a database administrator, sometimes you need to identify details abo ...

  3. Octave简明教程

    文章目录 简介 基本 符运算 算术运算符 逻辑运算符 赋值运算符 格式化输出 向量和矩阵 其他 移动数据 计算 绘图 基础语法 老师推荐人工智能最简单入手的是octave,用它写出来之后再转用pyth ...

  4. Python 中MNE库去伪迹(ICA)

    脑电数据处理过程中如何去除伪迹是很重要的一个步骤,伪迹的处理主要包括眼电.心电.肌肉点以及工频干扰.实际处理过程中通过滤波0.5-45赫兹的带通滤波器可以去除掉大部分的噪音,在我接触到的实际脑电数数据 ...

  5. IDEA使用git提交代码时,点了commit之后卡死在performing code analysis部分,或者performing code analysis结束后没有进入下一步操作。

    IDEA使用git提交代码时,点了commit之后卡死在performing code analysis部分,或者performing code analysis结束后没有进入下一步操作. 版权声明: ...

  6. AndroidStudio Refreshing Gradle Project编译更新Gradle卡住问题

    描述 重新安装AndroidStudio或从Eclipse换到AS的时候,在编译新的项目的时候,一般会遇到如下图那样. 一般是因为在AndroidStudio每次更新版本都会更新Gradle这个插件( ...

  7. DEA使用git提交代码时,点了commit之后卡死在performing code analysis部分,或者performing code analysis结束后没有进入下一步操作。...

    把"Perform code analysis" 和 "Check TODO" 复选框前面的勾去掉就好了. 这个可能是因为所分析的目标文件太大了,造成一直分析不 ...

  8. performing vcs refresh卡住不动解决方法

    之前有个项目很久没改了,然后今天改了下,发现提交一直卡在performing vcs refresh这个对话框里面,然后各种百度,发现都没什么卵用,后来我在看我的Version Controller中 ...

  9. IDEA去掉Performing Code Analysis,Check TODO

    使用IDEA提交代码时,如果修改代码很多,总是要等很久,如下图: 该如何解决呢?其实很简单,只要在提交界面,把下面红色框前面的勾去掉即可: settings->Version Control-& ...

最新文章

  1. scrollview复用节点_ScrollView 两个控件复用, ScrollView 的极限优化
  2. envi反演水质参数_科技前沿基于GOCI静止水色卫星数据的长江口及邻近海域Kd(490)遥感反演及其在机载激光测深预评估中的应用...
  3. centos7安装dhcp服务器并由客户端动态获取IP地址
  4. 阅读开源源码的正确姿势建议
  5. c语言赋值小数,c语言中将一个浮点型赋值给整型时,会不会四舍五入?
  6. vm_comcat报错 - 数字或值错误 : 字符串缓冲区太小
  7. windows XP系统下oracle完整卸载过程
  8. MySQL的变量分类总结
  9. Java函数编码_转[收集java的常用函数代码]
  10. Dubbo-admin的安装
  11. Android API Guides---Bluetooth
  12. 计算机中信息表示方法,计算机中的信息表示方法二进制
  13. 自己调用NTDLL函数
  14. shouldband绑定数据的办法
  15. 织梦采集侠-dede织梦采集发布
  16. 多个PDF怎么免费合并成一个PDF
  17. ESP8266安装安信可一体化开发环境
  18. Face-recognition实现人脸识别
  19. 来自T00ls的帖子-XSS的奇技淫巧
  20. uniapp 评价应用_uniapp打开应用市场(APP端)

热门文章

  1. OpenFOAM常用类
  2. 华为harmonyos手机开发者,华为鸿蒙HarmonyOS2.0手机开发者Beta版正式发布
  3. Linux 自带神器 logrotate 详解
  4. import cv2时出现ImportError: DLL load fail:找不到指定模块
  5. 两年数据对比柱形图_【系列课程】用Excel进行数据可视化组合图表的制作lt;二gt;...
  6. 笔者在国庆期间发文的感概:思绪万千
  7. 在MySQL中第一章选择题_北大青鸟第二学期 123章数据库选择题
  8. 成立5年仅有2款产品,“黑马”云鲸何以比肩石头、科沃斯?
  9. 图像分割库segmentation_models.pytorch
  10. java 地图坐标转换_百度地图坐标和高德地图坐标转换代码 Java实现