2016-04-22 4 views
1

Ich versuche, Gradle zu konfigurieren, um immer die neueste Version eines anderen Projekts, das ich host, in artefactory einzubinden. Auf Artefakt habe ich zwei Versionen der Bibliothek in den letzten 24 Stunden gebaut.Gradle cacheDynamicVersionsFür keinen Effekt

In meinem build.gradle Ich habe

configurations { 
    all*.resolutionStrategy { 
     cacheDynamicVersionsFor 0, 'seconds' 
    } 
} 

dependencies { 
    compile "org:library:+" 
} 

ich erwarte, dass es in der neuesten Version der dynamischen Abhängigkeit immer ziehen, sondern es zieht immer in der ältesten Version in den letzten 24 Stunden (den Standard Verhalten). Wenn ich die zuletzt zwischengespeicherte Version lösche, wird auch die älteste Version der letzten 24 Stunden statt der neuesten Version aus dem Artefaktor heruntergeladen.

Antwort

2

Wenn Sie Feder gradle verwenden dependency-management-plugin Sie in Abhängigkeit Management-Abschnitt zusätzliche Auflösungsstrategie haben müssen:

dependencyManagement { 
    resolutionStrategy { 
     cacheDynamicVersionsFor 0, 'seconds' 
    } 
} 

P. S. In jedem Fall solltest du keinen groovy spread operator mit Alias ​​all verwenden, um dies anders zu schreiben (docs):

configurations.all { 
    resolutionStrategy { 
     cacheDynamicVersionsFor 0, 'seconds' 
    } 
}