Die transitive Abhängigkeit des optionalen Teilprojekts Gradle Multiprojekt sollte in ein vorhandenes Teilprojekt aufgelöst werden
Angenommen, das folgende Projekt. Das Master-Projekt ist ein Multi-Projekt, jedoch kann jeder Teil des größeren Projekts einzeln entwickelt oder gemischt werden in:
/master/build.gradle
/m1/build.gradle
/m2/build.gradle
/m3/build.gradle
annehmenm3
Verwendetm2
undm2
Verwendetm1
( m1 <- m2 <- m3 )
das Vorhandensein vonm2
Optional ist ein Multiprojekt mit folgendem Layout auch sinnvoll
/master/build.gradle
/m1/build.gradle
/m3/build.gradle
aber in diesem Fallm2
würde aus dem Artefakt-Repository gezogen werden, was jedoch in Ordnung istm1
war eine transitiven Abhängigkeit vonm2
das ist gut, aber wie kann ich gradle sagen, die lokale version von zu verwenden?m1
anstelle des gebackenen Artefakts?
Ich bleibe dabei, jeder Ort, an dem ich Zugriff habe, um diese Dinge außer Kraft zu setzen, gibt mir gradle "nur"ModuleVersionSelector
Level-Zugriff, wie kann ich hinzufügenDefaultProjectDependency
nach dem heruntergeladenen Artefakt transitiven Abhängigkeiten?
Ich habe möglicherweise eine Alternative, wenn ich auf das vollständige Abhängigkeitsdiagramm der archivierten Artefakte zugreifen und einige Überschreibungen / Ausschlüsse vornehmen kann.
BEARBEITEN:
Das Beste, was ich mir ausgedacht habe, ist die Verwendung eines Filters mit resolutionStrategy. Ich habe ein Beispiel erstellt, indem ich das Projekt 'elastic-deps' weiterentwickelt habe