I have a multi-module Maven project with a Vaadin-based web application:
common
core
license
mainapp
model
launcher
......
connectors
connector-msp
connector-jira
........... (many others)
connectors-editors
msp-editor
jira-editor
...........(many others)
the Maven root file included “connectors” and “connectors-editors” modules (pom.xml files), which in turn included all the subprojects.
my understanding is I have to make the FLAT projects list in settings.gradle (list all “connectors” and their “editors” in the common settings.gradle):
include “common”, “connectors:connector-msp”, “connectors:connector-jira”, … “launcher”, “mainapp”, “test-utilities”,
“webshared”, “webui”
but then I can’t build “connectors” or “connectors-editors” separately from the rest of the application. is this right?
another thing is that I declare many common dependencies on “connectors” pom.xml - they are the same for all subprojects in “connectors”. similar in “connectors-editors”. where do these shared dependencies go with Gradle?
postDir: { path.removeLast() }) { if (path) include path.join(":") }
You can issue a build at any level in the structure, build at root level will build everything. Build at connector level will build only connectors, and possible modified project dependencies.