gnodet commented on PR #13330:
URL: https://github.com/apache/maven/pull/13330#issuecomment-6209502844
Correction to my previous comment: the maven-plugin-tools gap I mentioned
doesn't actually exist.
**`@After` annotation scanning is already fully implemented** in
maven-plugin-tools 4.0.0-beta-3 (commit `ce239e95b58e`, 2026-09-06). The full
chain works end-to-end:
1. `DefaultMojoAnnotationsScanner` scans `@After` / `@Afters` via ASM
bytecode visitors
2. `JavaAnnotationsMojoDescriptorExtractor` collects from class hierarchy
3. `PluginDescriptorFilesGenerator` writes `<afterLink>` elements into
`plugin.xml`
4. Maven core's `BuildPlanExecutor.applyAfterLinks()` creates DAG edges from
them
All three pointer types (PROJECT, DEPENDENCIES, CHILDREN) are covered with
IT tests in both plugin-tools (`v4api-3x`) and maven-core
(`MavenITmng12534AfterAnnotationTest`).
This means the suggested section 3.4 ("Decomposing `aggregator = true`") can
be stronger — all v4 replacement mechanisms are **available today**, not just
planned:
- Execution scope → `all` phases ✓
- Dependency resolution → `@Resolution` ✓
- Ordering constraints → `@After` ✓ (plugin-tools beta-3 generates
descriptors)
- Exclusive locking → DAG edges ✓
The comment in the Maven core IT test mojo (`TouchMojo.java` line 41: *"once
maven-plugin-tools learns to scan @After..."*) is stale and should be cleaned
up.
_Claude Code on behalf of Guillaume Nodet_
--
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]