gnodet commented on PR #618: URL: https://github.com/apache/maven-jar-plugin/pull/618#issuecomment-6070167592
This PR removes `maven-archiver` and `plexus-archiver` from the JAR plugin by inlining manifest generation — a direction I fully support. Before merging, it would be worth aligning on which long-term approach we want, since the choice affects `maven-war-plugin` and other plugins that will follow: **Option A — Merge as-is (inline, plugin-local)** Keep `ArchiveConfiguration` + `ManifestBuilder` private to the JAR plugin. Each plugin that migrates to Maven 4 inlines its own manifest generation, accepting some duplication. Simple, zero-dependency, done now. **Option B — Rework maven-archiver for Maven 4** Keep `maven-archiver` alive but strip it down to manifest-only (remove everything JAR-specific: `MavenArchiver.createArchive()`, the plexus-archiver integration, etc.) and rewrite it against the Maven 4 API (no plexus types, no `plexus-interpolation`). Other plugins (`maven-war-plugin`, `maven-source-plugin`, …) could then share a single, maintained manifest library once they migrate to Maven 4. **Option C — New shared manifest library (no plexus-archiver)** Create a lean `maven-manifest-builder` (or similar) that is Maven-4-API-native from day one, with no plexus-archiver dependency. Avoids inheriting the baggage of the existing `maven-archiver` artifact while still enabling code sharing once the other plugins migrate. Options B and C are only worth the effort if we expect multiple plugins to converge on Maven 4 in the near term; otherwise Option A avoids premature abstraction. If the consensus is Option A, this PR is ready (modulo the open review comments). If B or C, it makes sense to prototype the shared layer first and rebase this on top. What's the preferred direction? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
