我们在IDEA上有一个项目,由几个中等大小的Java包和一个非常小的Kotlin包(5个文件)组成。我注意到任何Java包的性能都很好,但对于非常小的Kotlin包,它在自动完成、代码分析和编译方面要慢10倍。自动完成有时非常慢,以至于popover不能加载所有的方法,它必须增量地加载几个API。我们的开发人员每次输入一个单词并等待自动完成时,大约需要2-5秒才能显示预期的自动完成。有时自动补全太慢,无法显示任何内容,我们不得不取消单词并重新键入,然后等待。在代码分析中也会出现同样的缓慢。这严重影响了我的团队的工作效率。从我们的研究来看,这似乎是一个众所周知的长期问题。这也发生在我们的另一个小项目中。我想知道我们能做些什么来解决这个问题?谢谢。
Kotlin插件是最新版本,版本: 1.1.3-release-IJ2017.2-2 Intellij也是最新版本,2017 2.1 (构建于2017年7月31日)
发布于 2017-08-09 19:31:39
快照中可见的问题在Kotlin 1.1.4中得到了解决。在撰写本文时,它已经发布为EAP (早期访问预览版);最终版本将很快发布(并与IntelliJ IDEA 2017.2.2捆绑在一起)。
发布于 2019-09-24 15:55:41
在Kotlin 1.3.50中仍然发生。已通过在Settings > Editor > General > Auto Import中禁用Add unambiguous imports on the fly解决

发布于 2019-12-28 04:38:43
我最近在Kotlin gradle多模块项目中遇到了这个问题。通过大量增加vmoptions中的内存设置,我设法恢复了良好的代码分析和完成速度,这就是它们现在的样子
-Xms512m
-Xmx16384m
-XX:ReservedCodeCacheSize=960m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=100
-ea
-XX:CICompilerCount=2
-Dsun.io.useCanonPrefixCache=false
-Djava.net.preferIPv4Stack=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Djdk.attach.allowAttachSelf=true
-Dkotlinx.coroutines.debug=off
-Djdk.module.illegalAccess.silent=true
-Dawt.useSystemAAFontSettings=lcd
-Dsun.java2d.renderer=sun.java2d.marlin.MarlinRenderingEngine
-Dsun.tools.attach.tmp.only=true

https://stackoverflow.com/questions/45581424
复制相似问题