2012-04-18 13 views
8

Estoy migrando de Ant/Ivy a Gradle, y estoy tratando de comprender cómo se especifica una ruta relativa al repositorio de Ivy local. Standalone Ivy establece la variable ${ivy.default.ivy.user.dir} de forma predeterminada en .ivy2 en el directorio de inicio del usuario y coloca allí el repositorio local.¿Cómo especificar una ruta relativa al repositorio de Ivy local en Gradle?

puedo simular esto de la siguiente manera:

repositories { 
    ivy { 
     url "C:/Users/RYAN/.ivy2/local" 
     layout 'pattern', { 
      artifact "[organisation]/[module]/[revision]/[artifact](-[classifier])-[revision](.[ext])" 
      ivy "[organisation]/[module]/[revision]/[artifact](-[classifier])-[revision](.[ext])" 
    } 
} 

Pero no desee especificar una ruta absoluta. Veo que hay una variable de entorno GRADLE_USER_HOME, pero Gradle no la establece de forma predeterminada; debo especificarla en la línea de comandos.

¿Gradle proporciona una forma de acceder a un repositorio de Ivy local predeterminado?

Respuesta

11

Cómo sobre el uso:

url "${System.properties['user.home']}/.ivy2/local" 
+0

Gracias, que hace el trabajo. Todavía me gustaría acceder/usar algunas de las propiedades de Ivy _default_, pero esto funcionará para evitar la ruta absoluta. –

+0

No creo que Gradle tenga un acceso directo ... (es decir, como el repositorio mavenCentral()) ... Siempre puede solicitar esta función en los foros de Gradle. – vicsz

+0

Opcionalmente ... siempre puede asegurarse de que la propiedad del sistema ivy.default.ivy.user.dir esté establecida ... y úsela para reemplazar 'user.home' en mi ejemplo. – vicsz

Cuestiones relacionadas