2011-05-06 24 views
57

¿Hay alguna manera de obtener la ubicación del repositorio local de Maven?¿Cómo obtener la ubicación del repositorio local de Maven?

Utilizando el siguiente comando puede forzar Maven para utilizar un archivo de configuración específica:

mvn -s < path to settings file > 

Sé que puede editar settings.xml archivo para establecer una ubicación de repositorio, pero puedo obtener el valor predeterminado actual con un poco de Maven ¿mando?

Respuesta

68

Si sólo desea el repositorio local, intente esto:

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

Creo que tenía la intención de '| grep -v '\ [INFO \]' 'Su expresión regular tiene efectos secundarios desagradables. – kubanczyk

+0

ambas versiones funcionan para mí, ¿qué quiere decir con "efectos secundarios desagradables"? – adutra

+3

@adutra Su expresión regular especifica un grupo de coincidencia que consta de los caracteres en mayúscula I, N, F y O. Por lo tanto, coincidirá con cualquiera de esas líneas: INFO, OFNI, I, F, N etc. Pruébelo 'eco - e "INFO \ nOFNI \ nI \ nIfoobar" | grep '[INFO]' ' – pmr

35

Sí, puede obtenerlo con la opción -X o --debug, p. Ej. 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 
... 
29

El plugin de Maven Ayuda mostrará los ajustes locales, incluyendo la ruta del repositorio local.

desea que el comando:

mvn help:effective-settings 

salida mostrará la configuración en formato XML. Busque el elemento localRepository:

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

Debe estar en el directorio /home/.m2, la carpeta está probablemente oculto. Por lo tanto, deberá presionar Ctrl + H para ver las carpetas ocultas.

+0

Muchas gracias. – Peter

+0

@Peter ¡Es un placer! –

0

normalmente es C: \ Users \ USER_NAME \ .m2 \ repository. Sin embargo, el comando "mvn help: effective-settings" seguramente mostrará la ruta local en respuesta xml.

Cuestiones relacionadas