2012-04-18 19 views
8

Ant/Ivy'den Gradle'a geçiyorum ve yerel Ivy repo'yu göreceli bir yol belirlemeyi anlamaya çalışıyorum. Bağımsız Ivy, ${ivy.default.ivy.user.dir} değişkenini kullanıcı giriş dizininde varsayılan olarak .ivy2 olarak ayarlar ve yerel repo'yu buraya yerleştirir.Gradle'da yerel Ivy repo'ya yönelik göreceli bir yol nasıl belirlenir?

şöyle Bunu taklit edebiliriz:

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])" 
    } 
} 

Ama mutlak bir yol belirtmek istemiyorum. Görüyorum ki bir GRADLE_USER_HOME ortam değişkeni var, ancak Gradle bunu varsayılan olarak ayarlamıyor - Komut satırını belirtmem gerekiyor.

Not, varsayılan yerel bir Ivy repo'ya erişmek için bir yol sağlar mı?

cevap

11

Nasıl kullanma hakkında:

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

Teşekkür, çalışır söyledi. Yine de Ivy _default_ özelliklerinden bazılarına erişmek/kullanmak isterdim, ancak bu mutlak yoldan kaçınmak için çalışacaktır. –

+0

Gradle'ın böyle bir kısayolu olduğunu sanmıyorum ... (mavenCentral() repo gibi) ... Bu özelliği Gradle forumlarında her zaman isteyebilirsiniz. – vicsz

+0

İsteğe bağlı olarak, ivy.default.ivy.user.dir sistem özelliğinin her zaman ayarlandığından emin olabilirsiniz ve benim örneğimde 'user.home' yerine geçmek için kullanabilirsiniz. – vicsz

İlgili konular