Представьте, что есть проект Gradle с 2 модулями modA
и modB
. modB
зависит от modA
.
// within modB's build.gradle
dependencies {
implementation 'com.example:modA:x.y.z'
}
Я также мог бы определить зависимости проекта верхнего уровня следующим образом:
// within the top level build.gradle
project(':modB') {
dependencies {
implementation project(':modA')
}
}
В этом последнем примере выходные данные modA
Компиляция помещается в classpath для компиляции modB
.
Что произойдет, если я использую оба в одном проекте: какая версия классов будет скомпилирована в modB
? Будет ли это версия x.y.z
из modA
, или это будут только что скомпилированные версии?
Я пытаюсь найти разумный способ создания версий подмодулей монорепо, где нужен каждый подмодуль иметь отдельную версию, и я хочу понять, как Gradle разрешает версии.