feat(maven-use): consume binaries directly
Metadata
Current evaluation
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.
Suggested action: —
No scores available.
Issue body
This commit gives the `maven-use` plugin the ability to consume, as "source", artifacts that were previously built by Maven. This ability is constrained to the existence of a "maven-use" top-level directory in the part's source, which indicates that the plugin should use those binaries directly instead of attempting to build from Java source.
To illustrate this behavior, the new integration test builds two "projects": the first, "binaries-source", builds two Java dependencies using the maven-use plugin and copies the generated artifacts as "sources" for the second project, "binaries-consume". This project's third and final part then uses regular Java sources with the Maven plugin to create a fat "application" jar.
- [ ] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [ ] Have you added an entry to the changelog (`docs/reference/changelog.rst`)?
-----
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | 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. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged as a squash commit. Enables the maven-use plugin to directly consume pre-built Maven artifacts as sources when a maven-use directory exists, bypassing source compilation. Includes integration tests validating the workflow. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #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. | |
| #1166 feat(maven-use): support multi-module projects | craft-parts | merged | 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. | |
| #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. | |
| #1145 feat: 'self-contained' builds for Maven plugins | craft-parts | merged | Merged via squash after passing all CI checks and receiving two approvals. Introduces a self-contained build attribute for Maven plugins that forces rewriting Maven source versions from backstage artifacts and enables automatic backstage artifact discovery. |