← Back to issue list

feat(maven-use): support multi-module projects

View original Github issue

Metadata

Project
craft-parts
Number
#1166
Type
pull request
State
merged
Author
bepri
Labels
Created
Updated
Closed

Current evaluation

Merged. Implements recursive discovery and patching for nested pom.xml files in multi-module Maven projects via the maven-use plugin. Approved by three reviewers, passed all CI checks, and modified 11 files.

Suggested action:

No scores available.

Issue body

- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)? - [x] Have you added an entry to the changelog (`docs/reference/changelog.rst`)? ----- Adds support for multi-module Maven projects with the maven-use plugin. Multi-module projects are ones that declare the `<modules>` tag in their `pom.xml`, with nested `<module>` tags that give a relative path to another directory with its own `pom.xml`. These in turn can feature their own modules with their own `pom.xml`s. Maven-use now recursively discovers these `pom.xml` files and patches them just as it would normally patch the top-level one.

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Merged. Implements recursive discovery and patching for nested pom.xml files in multi-module Maven projects via the maven-use plugin. Approved by three reviewers, passed all CI checks, and modified 11 files.
qwen3.6-35b-a3b-mtp-q6 Merged: Adds recursive multi-module Maven project support to the maven-use plugin. The update automatically discovers and patches nested pom.xml files within module directories, enabling seamless handling of complex project structures.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#1163 feat(maven-use): consume binaries directly craft-parts merged Merged a squashed commit enabling the maven-use plugin to directly consume pre-built Maven artifacts as sources when a maven-use directory exists. Approved by three reviewers, passed all CI checks, and includes integration tests.
76%
#1155 feat(maven-use): handle indirect plugin dependencies craft-parts merged Merged changes fix Maven indirect plugin dependency handling by scanning available plugins on disk and adding explicit pins via pluginManagement, replacing hard-coded default versions. Approved by three reviewers with all CI checks passing.
74%
#1147 feat(maven-use): add support for the parent tag craft-parts merged Merged. Adds support for rewriting the parent tag version in pom.xml files for the maven-use tool. Approved by three reviewers, passed all CI checks, and implemented across eight files (+69/-2 lines). Resolves CRAFT-4602.
74%
#1215 feat(maven-use): improve selection when rewriting version numbers craft-parts merged Merged improvement to Maven version selection logic during rewrites. Approved by three reviewers and passed all CI checks. Adds full test coverage and documents edge cases across five files to handle arbitrary strings.
70%
#1125 feat: maven-use plugin craft-parts merged Merged the maven-use plugin, productizing it per CRAFT-4570. Approved by three reviewers and passed all CI checks. The update modified 21 files, adding 1505 lines and removing 136.
70%