Хорошо, поэтому единственный способ заставить это работать был следующий.
В модуле контрактов build.gradle.kts (здесь используется kotlin DSL):
val stubs by configurations.creating {
isCanBeConsumed = true
isCanBeResolved = false
}
artifacts {
add("stubs", tasks.verifierStubsJar.get())
}
Затем на стороне потребителя:
testImplementation(project(":libs:contracts", "stubs"))
Здесь важно использовать testImplementation. Если вы работаете только во время выполнения, необходимо предварительно создать jar-файлы в контрактном модуле. Использование testImplementation заставляет построить зависимость во время сборки проекта (то есть, как вы это делаете при выполнении теста)