Ali Shakiba
Ali Shakiba

Reputation: 21257

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

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?

Upvotes: 335

Views: 221714

Answers (5)

VincentVio
VincentVio

Reputation: 1

If you want to run maven without this command "mvn -f path/to/pom.xml" you can right click on your folder project (in intellij) and click on Rebuild module "name of your artifactId" (corresponding in your pom.xml). It worked for me.

Upvotes: -1

dunni
dunni

Reputation: 44515

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.

Upvotes: 566

Mick
Mick

Reputation: 973

You can try this:

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

Upvotes: 3

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

Upvotes: 21

Kyle Burton
Kyle Burton

Reputation: 27528

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

Upvotes: 18

Related Questions