Skip to content

Pin maven-jar-plugin 3.5.1 in modular IT fixtures - #3398

Merged
ascheman merged 1 commit into
apache:masterfrom
aschemaven:bugfix/jar-plugin-351-pin-win-jdk11
Jul 24, 2026
Merged

Pin maven-jar-plugin 3.5.1 in modular IT fixtures#3398
ascheman merged 1 commit into
apache:masterfrom
aschemaven:bugfix/jar-plugin-351-pin-win-jdk11

Conversation

@ascheman

Copy link
Copy Markdown
Contributor

The windows-latest jdk-11 CI cell fails for every PR since Maven 3.10.0-rc-1 became the IT baseline: its super-POM pins maven-jar-plugin 3.5.0, whose plexus-archiver 4.10.4 throws an NPE (JarToolModularJarArchiver.fixLastModifiedTimeZipEntries) when packaging modular JARs on Windows with JDK < 14 (no jar --date; POSIX attribute view is null on Windows). Details, reproducer and windows-runner validation: apache/maven-jar-plugin#555

maven-jar-plugin 3.5.1 (released 2026-07-22) ships plexus-archiver 4.12.0 with the fix. This pins 3.5.1 explicitly in the four affected modular fixtures (surefire-1733-junit4, surefire-1733-testng, surefire-2190, surefire-1993-jpms-providing-modules) so the fixtures stop depending on the super-POM's jar-plugin version.

Verified locally under Maven 3.10.0-rc-1: Surefire1733JUnit4IT, Surefire1733TestngIT, Surefire2190JUnit4IT, Surefire1993JpmsProvidingModulesIT all green, fixture logs confirm maven-jar-plugin:3.5.1:jar executed. The windows-latest jdk-11 cell (currently red on #3392/#3395 for this unrelated reason) should turn green with this change.


🤖 Generated with Claude Code

The windows-latest jdk-11 CI cell fails for every PR since Maven
3.10.0-rc-1 became the IT baseline: its super-POM pins maven-jar-plugin
3.5.0, whose plexus-archiver 4.10.4 throws an NPE
(JarToolModularJarArchiver.fixLastModifiedTimeZipEntries) when
packaging modular JARs on Windows with JDK < 14 (no 'jar --date'; POSIX
attribute view is null on Windows). Details and validation:
apache/maven-jar-plugin#555

maven-jar-plugin 3.5.1 (released 2026-07-22) ships plexus-archiver
4.12.0 with the fix. Pin 3.5.1 explicitly in the four affected modular
fixtures so they stop depending on the super-POM's jar-plugin version.

Verified locally under Maven 3.10.0-rc-1: Surefire1733JUnit4IT,
Surefire1733TestngIT, Surefire2190JUnit4IT and
Surefire1993JpmsProvidingModulesIT green; fixture logs confirm
maven-jar-plugin:3.5.1:jar executed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR aims to stabilize Surefire’s modular integration-test fixtures under the Maven 3.10.0(-rc-1) baseline by explicitly pinning maven-jar-plugin to 3.5.1, avoiding a Windows/JDK<14 modular-JAR packaging failure caused by the super-POM’s maven-jar-plugin:3.5.0 / plexus-archiver NPE.

Changes:

  • Add an explicit maven-jar-plugin version pin (3.5.1) to four JPMS-related surefire-its fixture POMs.
  • Document in each fixture why the pin is needed (linking to maven-jar-plugin issue #555).

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
surefire-its/src/test/resources/surefire-2190/pom.xml Pins maven-jar-plugin to 3.5.1 in the fixture build plugins.
surefire-its/src/test/resources/surefire-1993-jpms-providing-modules/pom.xml Pins maven-jar-plugin to 3.5.1 (currently under pluginManagement).
surefire-its/src/test/resources/surefire-1733-testng/pom.xml Pins maven-jar-plugin to 3.5.1 in the fixture build plugins.
surefire-its/src/test/resources/surefire-1733-junit4/pom.xml Pins maven-jar-plugin to 3.5.1 in the fixture build plugins.

@ascheman
ascheman merged commit 6e80c75 into apache:master Jul 24, 2026
27 of 28 checks passed
@github-actions

Copy link
Copy Markdown

@ascheman Please assign appropriate label to PR according to the type of change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants