IntelliJ IDEA中Kotlin报‘Expecting an element’错误的解决咨询
解决Kotlin中RestTemplate Mock的编译错误问题
核心问题原因
你使用的是Java风格的泛型类型限定写法,这在Kotlin中语法不兼容,因此编译器抛出“Expecting an element”错误。Kotlin的泛型实参语法与Java不同,不能通过在方法名前加尖括号的方式指定类型。
直接代码修正方案
将Java风格的写法替换为Kotlin原生的泛型指定方式:
// 替换原Java风格写法 ArgumentMatchers.any<ParameterizedTypeReference<Array<DataDto>>>()
如果你的项目引入了mockito-kotlin库(推荐用于Kotlin项目的Mockito适配),可以进一步简化为:
any<ParameterizedTypeReference<Array<DataDto>>>()
IntelliJ IDEA相关设置检查
若修正代码后仍有问题,可检查以下IDEA配置:
- Kotlin插件版本匹配:在
Settings → Plugins → Kotlin中,确保插件版本与项目依赖的Kotlin版本(1.6.10)一致,不一致则更新插件。 - JVM目标版本对齐:进入
File → Project Structure → Modules → [你的模块] → Kotlin,将目标JVM版本设置为17,与Java SDK版本保持一致。 - 清除IDEA缓存:执行
File → Invalidate Caches... → Invalidate and Restart,解决缓存导致的语法识别异常。
内容的提问来源于stack exchange,提问作者Tomas Lukac
相关产品推荐
相关产品推荐

