The problem is that IdeUtils.toRelativeAndFixSeparator attempts to canonicalise relative paths.
This will cause the result to be based on the current directory of the processor and not the project basedir as intended.
This causes the build to fail with canonicalisation errors.
I have supplied a patch against r485327 which includes extra test cases and all test cases pass.
I have also:
- removed the project
- removed use of assertTrue and converted to assertEquals (tests were succeeding when they should not have because the check was on the trailing path not the entire path)
- removed MavenProject from extractResourceDirs (it was never used)
Some other comments:
baseDir and projectBaseDir seem to be used but I can not see any use cases where these two are not the same value. Shouldn't the pom file always be located at the top of the eclipse project workspace? The similar names and mostly the same value caused me trouble in understanding the system. If they could get removed it would make things easier.