
The plugin will update a superproject to contain the submodules defined in the
manifest XML file whenever the manifest repo is changed.

For more information see [the documentation](java/Documentation/about.md).
