apache / apache/maven-resources-plugin
Destination file overwritten even with overwrite false in 3.4.0
- Dominant language
- Java
- Stars
- 61
- Forks
- 36
- Avg merge
- 1d 1h
- Merged PRs (30d)
- 3
Description
### Affected version
3.4.0
### Bug description
This is based on an issue reported by a NetBeans platform developer (and PMC member). When resources plugin is upgraded to `3.4.0`, a project was seen to fail if calling eg. `mvn test` subsequently to a clean build. In certain circumstances, a copied resource is altered later in the build. With `3.4.0` the original resource is copied back over the top, but the additional step (in this case a resource bundle in annotation processing during compilation) is not triggered, leaving an invalid and broken build.
The `overwrite` flag is documented as "Overwrite existing files _even if the destination files are newer_." (emphasis mine). This implies that the default behaviour should still be to not overwrite a newer destination file. Any NetBeans platform build with Maven is potentially relying on this behaviour, that the destination file is not overwritten if it has been changed by a later stage of the build. The change that introduced this seems to suggest that flag would also be deprecated, but it doesn't seem to be?? Is there another way of ensuring existing destination files are not overwritten?
I realise that overwriting existing resources in an annotation processor is something of a grey area. Unfortunately, it's something we're probably stuck with.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.