Move module list into pomless aggregators - #67
Merged
Conversation
The root pom.xml listed every module inline. Tycho's pomless build can derive an aggregator from a plain text file, so the list now lives in build/pom.tycho and the root pom declares a single module. The three LSP bundles move into an lsp/ folder with its own pom.tycho, which shows the same mechanism used to group related bundles. Nested modules need tycho.pomless.parent to point at the root, and the target definition is referenced by an absolute path because the previous relative one is resolved per module directory.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The root pom listed all 25 modules inline. Tycho's pomless build can derive an aggregator from a plain text file, so the list now lives in
build/pom.tychoand the root pom declares a single<module>build</module>. The three LSP bundles move into anlsp/folder with their ownpom.tycho, which shows the same mechanism used to group related bundles rather than to replace the reactor list.Two settings make the nested layout work.
tycho.pomless.parentis pointed at${maven.multiModuleProjectDirectory}so pomless modules resolve the root pom as their parent at any depth, which costs nothing per bundle, and the target definition is now referenced by an absolute path because the previous../target-platform/...is resolved against each module's own directory and breaks one level down.Beyond removing the inline list, the text format makes disabling a module a one-character edit, so the previously commented-out entries stay readable as
#comments.PomlessAggregator.adocdocuments the mechanism, including why automatic folder detection was not used here: it would silently pick up every subfolder and take away that ability.Verified with a full
./mvnw clean verify: BUILD SUCCESS across 30 modules, both aggregators included. Note that the LSP bundles moved on disk, so they need a re-import in an existing Eclipse workspace.