See https://builds.apache.org/job/maven-box/job/maven/job/MNG-5760/2/
Changes: * When a build fails, write file with properties to resume the next build * Refactored the getResumeFromSelector logic to be compliant with * Added JavaDoc to the method which determines whether a resume-from * Added license to BuildResumptionManagerTest * When -r is given, load resume.properties and apply it to the execution * Created unit tests for the resumeFromSelector method. * Removed dead code, as the `getResumeFrom` method has been moved to the * Fix bug where the build resume hint log could be logged incorrectly. * Fixed a bug where a failed project would be excluded in the next build * Refactored to call the resumption manager from the DefaultMaven instead * Removing the resumption data when a build succeeded. * Extract public interface * Store information about resumption storage in execution result * Replace Stream#filter#count with Stream#anyMatch * Avoid stringly-typed method signatures * Rename resumptionDataStored to canResume * Replace Plexus logger with SLF4J * Replace String#format with String concatenation * Renamed BuildResumptionManager to BuildResumer * Removed an unused mock for the plexus Logger, which is a leftover after * Resolving review comment; clearing up persistResumptionData method name. * Review comment: Removed Guava's @VisibleForTesting * When something fails while persisting resumption data, throw an * Add a boolean to the setCanResume method, which denotes whether a build * Fixed checkstyle findings * Moved the -rf helper method, including the tests, back to MavenCli. The * Rename interface and implementation * Refactored `#determineProjectsToSkip` to return a list instead of an * Split off BuildResumptionAnalyzer from BuildResumptionDataRepository * Persist method either succeeds or throws Exception, so returns void * Removed unused import All tests passed