Multi-module support for dev mode with Gradle
The libertyDev task adds some file monitoring but only for the current project (also see #624 ).
However as soon as the current project does not contain all sources but has dependencies to other projects even if they are in the same multiproject build - their source folders are not included making the feature unpredictable or even useless.
For my test case I am using a ear to deploy the application (which has no java sources at all) and all ejbs and web applications are in dependent projects
plugins { id 'ear' }
dependencies {
deploy project(':my_ejb_project')
deploy project(':my_web_project')
earlib project(':my_commons')
}
In this configuration - file system watching is completely useless as is.
The file system monitoring should include all output folders from all project dependencies. The DeployTask already collects the nessesary folders for the LooseEarApplication:
https://github.com/OpenLiberty/ci.gradle/blob/554caadb7b474c42454909ba3041fcc9114dfb36/src/main/groovy/io/openliberty/tools/gradle/tasks/DeployTask.groovy#L389
In case the project is very big (thinking of legacy projects) - a closure to filter the monitored projects may also be a good idea.
Seems to be very much the same issue as with the ci.maven plugin https://github.com/OpenLiberty/ci.maven/issues/697