如何通过Maven正确配置引入kotlin.test测试依赖?
Kotlin Maven环境下kotlin.test包无法引入问题解决
- 团队刚接触Kotlin技术栈,近期正在开展测试代码迁移工作,参考Mockk官方测试示例编写用例时,即使已通过Maven添加
kotlin.test依赖,依然无法正常引入kotlin.test相关包,测试文件中需要用到的kotlin.test API始终无法被识别。 - Mockk官方示例采用Gradle构建,无法直接参考解决Maven场景下的配置问题,尝试重启IntelliJ、单独执行mvn命令等操作均无法解决问题,且IntelliJ未提示已配置的
kotlin.test依赖存在错误。
原有Maven依赖配置
当前仅配置了如下基础kotlin.test依赖,使用的Kotlin版本为1.7.0:
<dependency> <groupId>org.jetbrains.kotlin</groupId> <artifactId>kotlin-test</artifactId> <version>${kotlin.version}</version> <scope>test</scope> </dependency>
解决方案
基础kotlin.test包仅提供通用测试API定义,没有绑定对应测试框架的适配实现,Maven环境下不会自动拉取对应测试引擎的适配依赖,需要手动引入匹配所用测试框架的桥接包。如果项目使用JUnit 5作为测试运行框架,额外添加如下依赖即可正常使用kotlin.test相关能力:
<dependency> <groupId>org.jetbrains.kotlin</groupId> <artifactId>kotlin-test-junit5</artifactId> <version>1.7.0</version> <scope>test</scope> </dependency>
依赖添加完成后,建议执行
mvn clean compile test-compile命令刷新项目依赖,触发IDE重新索引即可解决API无法识别的问题。
内容的提问来源于stack exchange,提问作者Semjon Mössinger
相关产品推荐
相关产品推荐

