Учитывая следующую структуру проекта:
.
├── src
│ └── proto
│ └── ....
├── build/generated/..
│ ...
├── proj1
│ ├── src
│ │ └──...
│ └── build.gradle
├── proj2
│ └── person-service
│ ├── src
│ │ └──...
│ └── build.gradle
├── build.gradle
└── settings.gradle
и настройки.градле:
rootProject.name = 'mainProj'
include 'proj1'
include 'proj2'
mainProj компилирует некоторые классы Java в папку сборки, которая включается в build.gradle mainProj с помощью sourceSets
; И компилируются нормально.
Однако подпроект не может получить доступ к сгенерированным классам при компиляции. К сожалению, в proj1/build.gradle не работает следующее:
dependencies {
runtimeOnly project(':mainProj')
}
Это не удается с:
...
A problem occurred evaluating project ':proj1'.
> Project with path ':MainProj' could not be found in project ':proj1'.
...
В противном случае подпроекты компилируются/запускаются нормально без кода этой отсутствующей зависимости.