This is not an error per se. This is due to how m2eclipse plugin works.
In short, Eclipse's plugin does not execute the maven lifecycle the same way it happens on the command line. It needs to "control" the build in order to:
- compile the project itself instead of using Maven
- update the UI accordingly
- update project's settings
- ...
But it can not know upfront what every single Maven plugin does and does it make sense to execute it. Attempts to run everything in such non typical Maven build process, often result in many problems. Thus the decision to introduce “project build lifecycle mapping”:
To solve these long-standing issues, M2Eclipse 1.0 requires explicit instructions what to do with all Maven plugins bound to “interesting” phases (see [M2E interesting lifecycle phases](M2E interesting lifecycle phases “wikilink”)) of a project build lifecycle. We call these instructions “project build lifecycle mapping” or simply “lifecycle mapping” because they define how m2e maps information from project pom.xml file to Eclipse workspace project configuration and behaviour during Eclipse workspace build.
So, the message you have, means that M2Eclipse was not provided with “project build lifecycle mapping” for the org.codehaus.mojo:flatten-maven-plugin:1.1.0:flatten
plugin execution. Depending on your usage of that plugin, you can configure M2Eclipse to Ignore Plugin Goal or Execute Plugin Goal.