Opcję przechodnią opcjonalnego podprojektu Gradle multiproject należy rozwiązać w istniejącym podprojekcie

załóżmy, że następujący projekt. projekt główny to projekt wieloaspektowy, jednak każdą część większego projektu można opracować indywidualnie lub wmieszać:

/master/build.gradle
/m1/build.gradle
/m2/build.gradle
/m3/build.gradle

przypuszczaćm3 używam2 im2 używam1 ( m1 <- m2 <- m3 )

obecnośćm2 jest opcjonalny, wieloprojektowy z następującym układem również rozsądnym

/master/build.gradle
/m1/build.gradle
/m3/build.gradle

ale w tym przypadkum2 zostanie wciągnięty z repozytorium artefaktów, które jest w porządku ... jednakm1 była zależnością przechodniąm2 co jest dobre, ale jak mogę powiedzieć gradle, aby używał lokalnej wersjim1 zamiast upieczonego artefaktu?

Utknąłem z tym, każde miejsce, w którym mam dostęp do nadpisywania tych rzeczy, które daje mi „grad”ModuleVersionSelector dostęp na poziomie, jak mogę dodaćDefaultProjectDependency zgodnie z pobranymi zależnościami przechodnimi artefaktów?

Mogę mieć alternatywę, jeśli mogę uzyskać dostęp do pełnego wykresu zależności zarchiwizowanych artefaktów i wstawić kilka przesłonięć / wykluczeń.

EDYTOWAĆ:

najlepsze, co wymyśliłem, to użycie filtra przy użyciu resolutionStrategy, stworzyłem przykład, dalej rozwijając projekt „elastic-deps”

https://github.com/kgyrtkirk/elastic-deps

questionAnswers(2)

yourAnswerToTheQuestion