Kotlin Quarkus应用如何移除quarkusDev任务的compileTestKotlin依赖
解决方案
完全可以将compileTestKotlin从quarkusDev的执行链路中移除,提供两种实现方式:
方式1:临时跳过(单次生效)
执行启动命令时附加跳过参数即可:
./gradlew quarkusDev -x compileTestKotlin
方式2:永久配置(默认生效,不影响测试任务执行)
在你的build.gradle.kts的tasks配置块中添加如下规则:
tasks { // 原有配置保持不变,新增以下内容 named("compileTestKotlin") { onlyIf { // 仅当执行链路中不存在quarkusDev任务时,才执行compileTestKotlin !gradle.taskGraph.hasTask(tasks.quarkusDev) } } }
如果配置后仍存在测试相关任务被触发,可以额外在quarkusDev配置块中过滤掉所有测试类依赖:
quarkusDev { setSourceDir("$projectDir/src/main/kotlin") // 新增:排除所有测试相关任务依赖 dependsOn = dependsOn.filterNot { dep -> dep.toString().contains("test", ignoreCase = true) } }
验证配置
执行如下命令可以模拟任务执行流程,确认compileTestKotlin是否已被排除:
./gradlew quarkusDev --dry-run
注意事项
该配置不会影响正常的测试任务执行,当你主动执行test、jacocoTestReport等测试相关任务时,compileTestKotlin仍会正常运行。
内容的提问来源于stack exchange,提问作者Arthur Klezovich
相关产品推荐
相关产品推荐

