Skip to content

1.0.0

Latest

Choose a tag to compare

@github-actions github-actions released this 15 Jun 12:52
· 1 commit to refs/heads/main since this release

Initial release of new Maven Executor.

The project was originally developed as part of upcoming Maven 4, where at the point when we arrived to ITs, faced the issue, that there was no reusable library that:

  • supports programmatic execution of both, Maven 3 and Maven 4 (Maven 4 CLI is totally reworked, see CLIng)
  • does not depend on any of Maven artifacts
  • can transparently run Maven as "forked process" or as "embedded" (in same JVM, in isolated classloader)
  • have future proof API, not affected by possible future Maven CLI option changes
  • supports advanced features, like testing Maven with "split local repository" feature (impossible with both existing solutions)
  • makes possible total isolation of invoked Maven from user/host environment

The upcoming Maven Executor 1.0.0 is already used (and as part of Maven 4 build, was for years) in Maven 4 ITs to execute Maven 4, while the assertions are done in Maven IT classes. Long term goal, is to deprecate Invoker and Verifier and replace them with this tool.

Maven Executor 1.0.0 is Java 8 baseline, and aside of two, out of the box provided runners ("forked" and "embedded") offers also Docker based executors. When run on Java 9+, it also provides ToolProvider SPI integration.