code-gijoe
code-gijoe

Reputation: 7234

How to get the Maven local repo location?

Is there a way to get the Maven local repo location?

Using the following command you can force Maven to use a specific setting file:

 mvn -s < path to settings file >

I know you can edit settings.xml file to set a repository location, but can I get the current default value with some Maven command?

Upvotes: 115

Views: 144346

Answers (6)

adutra
adutra

Reputation: 4526

If you want just the local repo, try this:

mvn help:evaluate -Dexpression=settings.localRepository | grep -v '\[INFO\]'

EDIT

I'm revisiting this after years because recent versions of the Maven help plugin introduced a useful parameter for the evaluate goal called forceStdout that allows us to remove the need to grep the output:

mvn help:evaluate -Dexpression=settings.localRepository -q -DforceStdout

Upvotes: 197

Shubham Pandey
Shubham Pandey

Reputation: 1828

For windows users

Usually it's in: C:\Users\USER_NAME\.m2\repository.
However the mvn help:effective-settings command will surely show the local path in response xml.

Upvotes: 8

khmarbaise
khmarbaise

Reputation: 97359

In the meantime you can do that in a simpler way:

mvn help:evaluate -Dexpression=settings.localRepository -q -DforceStdout

You can also directly use that to assign that a shell variable like this:

RESULT=$(mvn help:evaluate -Dexpression=settings.localRepository -q -DforceStdout)

Important note: Use most recent version of Maven and of course most recent vesion of maven-help-plugin...

This will contain the result without a new line etc.

Upvotes: 30

Aboozar Rajabi
Aboozar Rajabi

Reputation: 1793

It should be in the /home/.m2 directory, the folder is probably hidden. So, you'll need to Ctrl+H to see hidden folders.

Upvotes: 6

Justin Garrick
Justin Garrick

Reputation: 14947

Yes, you can get it with the -X or --debug option, e.g. mvn -X

...
[DEBUG] Reading global settings from C:\Maven\conf\settings.xml
[DEBUG] Reading user settings from C:\segphault\.m2\settings.xml
[DEBUG] Using local repository at C:\Repo
...

Upvotes: 61

JRS
JRS

Reputation: 928

The Maven Help plugin will show local settings, including the local repository path.

You want the command:

mvn help:effective-settings

Output will show settings in XML format. Look for the localRepository element:

<localRepository xmlns="http://maven.apache.org/SETTINGS/1.1.0">/home/jrs/.mavenRepo</localRepository>

Upvotes: 50

Related Questions