https://github.com/apache/maven-executor
Apache Maven Executor
https://github.com/apache/maven-executor
build-management hacktoberfest java maven maven-executor-plugin maven-plugins
Last synced: about 1 month ago
JSON representation
Apache Maven Executor
- Host: GitHub
- URL: https://github.com/apache/maven-executor
- Owner: apache
- License: apache-2.0
- Created: 2026-04-29T14:51:57.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2026-05-08T20:23:45.000Z (about 1 month ago)
- Last Synced: 2026-05-08T22:19:16.680Z (about 1 month ago)
- Topics: build-management, hacktoberfest, java, maven, maven-executor-plugin, maven-plugins
- Language: Java
- Homepage: https://maven.apache.org/executor/
- Size: 170 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Notice: NOTICE
Awesome Lists containing this project
README
Maven Executor
==============
[][license]
[](https://search.maven.org/artifact/org.apache.maven.plugins/maven-executor-plugin)
[](https://github.com/jvm-repo-rebuild/reproducible-central/blob/master/content/org/apache/maven/executor/README.md)
The Executor suite provides means to execute Maven 3 and Maven 4 programmatically,
usually as part of some "integration builds" suite for some plugin or extensions,
or Maven itself.
The dependency-less artifact `maven-executor` provides API and two executor
implementations out of the box: "forked" and "embedded". There are more providers in
`providers/` sub-projects. In total, below is list of supported executors:
* `forked` OOTB with `maven-executor`
* `embedded` OOTB with `maven-executor`
* `docker-exe` uses Docker CLI and runs [Apache Maven Docker Image](https://hub.docker.com/_/maven)
* `testcontainers` uses Docker via TestContainers and runs [Apache Maven Docker Image](https://hub.docker.com/_/maven)
Versions and Branches
---------------------
Maven Executor 1.x line will contain **only** the executor bits, needed to run Maven ITs.
Maven Executor 2.x line will add extra features a top of executors.
Development should happen against **main** branch. In case of need, improvements may be
back-ported to `executor-1.x` branch, to release patch releases, but in general, the
2.x line is under development.
Contributing
------------
You have found a bug, or you have an idea for a cool new feature? Contributing
code is a great way to give something back to the open source community. Before
you dig right into the code, there are a few guidelines that we need
contributors to follow so that we can have a chance of keeping on top of
things.
Getting Started
---------------
+ Make sure you have a [GitHub account](https://github.com/signup/free).
+ If you're planning to implement a new feature, it makes sense to discuss your changes
on the [dev list][ml-list] first.
This way you can make sure you're not wasting your time on something that isn't
considered to be in Apache Maven's scope.
+ Submit a ticket for your issue, assuming one does not already exist.
+ Clearly describe the issue, including steps to reproduce when it is a bug.
+ Make sure you fill in the earliest version that you know has the issue.
+ Fork the repository on GitHub.
Making and Submitting Changes
--------------
We accept Pull Requests via GitHub. The [developer mailing list][ml-list] is the
main channel of communication for contributors.
There are some guidelines which will make applying PRs easier for us:
+ Create a topic branch from where you want to base your work (this is usually the master branch).
Push your changes to a topic branch in your fork of the repository.
+ Make commits of logical units.
+ Respect the original code style: by using the same [codestyle][code-style],
patches should only highlight the actual difference, not being disturbed by any formatting issues:
+ Only use spaces for indentation.
+ Create minimal diffs - disable on save actions like reformat source code or organize imports.
If you feel the source code should be reformatted, create a separate PR for this change.
+ Check for unnecessary whitespace with `git diff --check` before committing.
+ Make sure you have added the necessary tests (JUnit/IT) for your changes.
+ Run all the tests with `mvn -Prun-its verify` to assure nothing else was accidentally broken.
+ Submit a pull request to the repository in the Apache organization.
If you plan to contribute on a regular basis, please consider filing a [contributor license agreement][cla].
Additional Resources
--------------------
+ [Contributing patches](https://maven.apache.org/guides/development/guide-maven-development.html#Creating_and_submitting_a_patch)
+ [Contributor License Agreement][cla]
+ [Apache Maven Bluesky Account](https://bsky.app/profile/maven.apache.org)
+ [Apache Maven Mastodon Account](https://mastodon.social/deck/@ASFMavenProject@fosstodon.org)
[license]: https://www.apache.org/licenses/LICENSE-2.0
[build]: https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven-executor/
[test-results]: https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven-executor/job/master/lastCompletedBuild/testReport/
[ml-list]: https://maven.apache.org/mailing-lists.html
[code-style]: https://maven.apache.org/developers/conventions/code.html
[cla]: https://www.apache.org/licenses/#clas