Corda4开发环境IntelliJ代码补全失效,Kotlin版本不兼容如何解决?
问题根因
你推测的版本兼容问题是正确的:Corda 4 官方固定绑定Kotlin 1.2.71版本,IntelliJ安装的1.5版本Kotlin插件跨了多个大版本,对低版本Kotlin的语法索引、第三方库(Corda)API识别能力存在兼容缺陷。
两段录屏的效果差异是因为:第一段输入的是Kotlin通用基础语法、JDK标准API,高版本Kotlin插件的向下兼容逻辑可以正常识别,所以能触发补全;第二段输入的是Corda专属API,或者Kotlin 1.2特有的语法特性,高版本插件无法匹配索引,因此没有补全提示。
修复操作步骤
- 降级IntelliJ与Kotlin插件版本
若当前IntelliJ版本≥2020.1,先将IDE降级到2018.3~2019.2范围内的发行版,该区间的IntelliJ原生支持Kotlin 1.2.71版本插件,插件市场可直接搜索安装对应版本,无需手动下载安装包。 - 锁定项目Kotlin编译配置
打开项目根目录build.gradle文件,将所有Kotlin相关依赖(kotlin-stdlib、kotlin-reflect等)的版本统一指定为1.2.71;进入IntelliJ配置页「File → Settings → Build, Execution, Deployment → Compiler → Kotlin Compiler」,将Language version、API version均设置为1.2,Target JVM version设置为1.8。 - 重建项目索引
点击顶部菜单栏「File → Invalidate Caches...」,勾选「Clear file system cache and local history」后重启IDE,等待全量索引完成即可验证代码补全功能。
内容的提问来源于stack exchange,提问作者McXD
相关产品推荐
相关产品推荐

