How to run Maven from another directory (without cd to project dir)?

Maven

Maven Problem Overview


Supposing my maven project is located in /some/location/project and my current location is /another/location/ how can I run maven build without changing to project location cd /some/location/project?

Maven Solutions


Solution 1 - Maven

You can use the parameter -f (or --file) and specify the path to your pom file, e.g. mvn -f /path/to/pom.xml

This runs maven "as if" it were in /path/to for the working directory.

Solution 2 - Maven

I don't think maven supports this. If you're on Unix, and don't want to leave your current directory, you could use a small shell script, a shell function, or just a sub-shell:

user@host ~/project$ (cd ~/some/location; mvn install)
[ ... mvn build ... ]
user@host ~/project$

As a bash function (which you could add to your ~/.bashrc):

function mvn-there() {
  DIR="$1"
  shift
  (cd $DIR; mvn "$@")     
} 

user@host ~/project$ mvn-there ~/some/location install)
[ ... mvn build ... ]
user@host ~/project$

I realize this doesn't answer the specific question, but may provide you with what you're after. I'm not familiar with the Windows shell, though you should be able to reach a similar solution there as well.

Regards

Solution 3 - Maven

For me, works this way: mvn -f /path/to/pom.xml [goals]

Solution 4 - Maven

You can try this:

pushd ../
maven install [...]
popd

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionAli ShakibaView Question on Stackoverflow
Solution 1 - MavendunniView Answer on Stackoverflow
Solution 2 - MavenKyle BurtonView Answer on Stackoverflow
Solution 3 - MavenJonathan Patrício BenedetView Answer on Stackoverflow
Solution 4 - MavenMickView Answer on Stackoverflow