我可以从构建脚本中引用 connectedCheck 任务(来自android插件):
connectedCheck.finalizedBy AndroidShowTestResults
但是尝试使用 connectedDebugAndroidTest (也来自android插件)
connectedDebugAndroidTest.finalizedBy AndroidShowTestResults
给了我
错误:(48,0)找不到属性' connectedDebugAndroidTest'在项目':app'。
如果我尝试
task connectedDebugAndroidTest << {print '123'}
它用
诅咒我错误:无法添加任务&#39;:app:connectedDebugAndroidTest&#39;因为具有该名称的任务已经存在。
我不明白为什么我不能参考 connectedDebugAndroidTest ?
可用的gradle任务如下所示:
答案 0 :(得分:4)
android插件推迟添加几个任务,特别是那些在其中具有buildType或flavor名称的任务,直到配置阶段的最后阶段。这反过来又意味着如果您尝试按名称引用这些尚未添加的任务,您很可能会看到&#34;不存在&#34;输入错误消息。如果要在延迟创建的任务周围添加依赖关系,则应等到配置完成后:
gradle.projectsEvaluated {
connectedDebugAndroidTest.finalizedBy AndroidShowTestResults
}
或者,您可以为任务图事件添加一个监听器,这样您就可以在任务图中添加某个任务后立即执行操作:
tasks.whenTaskAdded { task ->
if (task.name == 'connectedDebugAndroidTest') {
task.finalizedBy AndroidShowTestResults
}
}
答案 1 :(得分:0)
尝试
task connectedTest(dependsOn: ["connectedDebugAndroidTest"]){
}
connectedTest.finalizedBy "AndroidShowTestResults"
答案 2 :(得分:-1)