gnodet commented on issue #134: URL: https://github.com/apache/maven-resources-plugin/issues/134#issuecomment-5828786604
This issue was raised when the plugin used the old Maven 2 API with Javadoc `@threadSafe` tags. The situation has changed significantly: 1. **`File.mkdirs()` concern is resolved** — maven-filtering now uses `Files.createDirectories()` (NIO2), which is thread-safe and idempotent per the JDK specification. 2. **Maven 4 API makes this moot** — the plugin has been migrated to the Maven 4 API (`org.apache.maven.api.plugin.annotations.@Mojo`), which has no `threadSafe` attribute. In Maven 4's parallel build scheduler (`BuildPlanExecutor`), all V4 API mojos are treated as safe for concurrent execution by design — the check is `isV4Api()`, not `isThreadSafe()`. 3. **No shared mutable state between concurrent executions** — Maven DI creates a fresh mojo instance per execution. In a normal parallel build (`-T N`), each module writes to its own `target/classes`. The only way two executions would collide is if the user explicitly configures multiple modules to share an output directory, which is a user configuration issue. 4. **No reproducer was ever provided** despite being requested. Closing as Won't Fix / Not Reproducible. -- 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]
