Я застрял с переходной зависимой инъекцией в Gradle.У меня есть следующая структура:
A/
build.gradle.kts
settings.gradle.kts
B/
build.gradle.kts
settings.gradle.kts
C/
build.gradle.kts
- A зависит от проекта B.
- Квартира включает B
- B включает C
- Aи B находятся в разных репозиториях, поэтому для них нет общего корня.
Когда я строю A, я получаю следующую ошибку:
* Where:
Build file '/.../B/build.gradle.kts' line: 7
* What went wrong:
Project with path 'C' could not be found in project ':B'.
Что я должен вставить в A/settings.gradle.kts
чтобы заставить его работать?
Вот все файлы для воспроизведения моей проблемы:
A / build.gradle.kts
plugins { `java-library` }
dependencies { api(project("B")) }
A / settings.gradle.kts
rootProject.name = "A"
includeFlat("B")
B / build.gradle.kts
plugins { `java-library` }
dependencies { api(project("C")) }
B/settings.gradle.kts
rootProject.name = "C"
include("C")
B / C / build.gradle.kts
plugins { `java-library` }
dependencies { }
Вот вывод списка проектов вB
B/# gradle -q projects
------------------------------------------------------------
Root project
------------------------------------------------------------
Root project 'B'
\--- Project ':C'