Fix ReactorReader incorrect warnings and logic (fixes #2497) #2498
+17
−6
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.
Summary
Fixes #2497 by correcting the ReactorReader logic that was causing incorrect warnings and behavior.
Problem
The ReactorReader was:
true
(up-to-date) when output files were newer than packaged artifactsRoot Cause
The debug output revealed that the comparison was happening against POM files:
outputFileLastModified = 1750337881113
(Name.class)artifactLastModified = 1750335603495
(domain-3.1.4-SNAPSHOT.pom)This is fundamentally wrong because class files should be compared against JAR files, not POM files.
Solution
return true
toreturn false
when output files are newer than packaged artifactsChanges
impl/maven-core/src/main/java/org/apache/maven/ReactorReader.java
:true
tofalse
when files are newerExpected Behavior
Testing
Tested with the reproducer case where class files and POM files had the same timestamp - the incorrect warning no longer appears.
Pull Request opened by Augment Code with guidance from the PR author