Maven wrapper is a cool tool thing for running maven builds with the correct maven version. This introduces a script that is already known for gradle. Simply type m on the command line and run the maven wrapper. Even in case the wrapper is not in the current directory.
The script
When using gradle it’s suggested to use the gradle wrapper. It simply runs gradle in the correct version. And there is a maven wrapper that does the same for maven. But I haven’t seen that g script for maven at all.
So there it is:
#!/usr/bin/env sh
D=$(pwd)
M="mvnw"
while [ ! -x "$D/$M" -a "$D" != "/" ]; do
    D=$(dirname $D)
done
if [ ! -x "$D/$M" ]; then
    echo "No Maven found in current or parent directories!"
    exit 1
fi
echo "Run Maven $D/$M ..."
nice -n 1 "$D/$M" $@
Installation
In order to get the system to your environment it simply must be added to your path. Adding it to your path can be achieved by adding the script into a bin directory of your choice. For a user the ~/bin directory can be chosen. Otherwise an alias that references the script would be ok too.
E.g. for getting a ~/bin directory into your path add
PATH="$HOME/bin:$PATH
to your .profile. Alternatively to your .bashrc when using bash or .zshrc for zsh.
Usage
When being in a maven project simply run
m {please enter your goals}
# something like
m clean build
And you’re done.
In case you are in a subdirectory of your project. Simply run
m {please enter your goals}
# something like 
m clean build
And you’re done too.
Of course the directory must be the root maven project or a maven module in a multi module build.
