| `cli-opts` / `MAVEN_CLI_OPTS` | Additional [Maven options](https://maven.apache.org/ref/3-LATEST/maven-embedder/cli.html) used on the command line | `--no-transfer-progress --batch-mode --errors --fail-at-end --show-version -DinstallAtEnd=true -DdeployAtEnd=true` |
### About `$MAVEN_IMAGE`
Each job in the template will use the defined container image to provide the Maven and Java runtime to the job context.
That's why it is mandatory that you set the version of Maven as required by your project (e.g. `registry-1.docker.io/library/maven:3.9.9-eclipse-temurin-21` for Maven 3.9.9 on Eclipse Temurin JDK 21).
#### Use of the Maven Wrapper
Maven Wrapper - although very convenient for the developer to automatically download and use the required Maven version on each developer environment - is **not supported by this template**.
We consider reinstalling over and over again another version of Maven in every job would be dumb: better pull directly an image with the right version.
### About `$MAVEN_CFG_DIR`
This variable is used to define the Maven configuration directory. It is used to declare the cache policy and marked the `${MAVEN_CFG_DIR}/repository` directory as cached (not to download Maven dependencies over and over again).