2014-03-24 7 views
10

Ich versuche, die folgende Abhängigkeit hinzuzufügen:Gradle Download Abhängigkeitsfehler

compile group: 'com.cedarsoft.commons', name:'test-utils', version:'5.0.9' 

Gradle lädt ein paar Gläser und dann die folgende Fehlermeldung erhalte ich:

POM relocation to an other version number is not fully supported in Gradle : xml-apis#xml-apis;2.0.2 relocated to xml-apis#xml-apis;1.0.b2. 
Please update your dependency to directly use the correct version 'xml-apis#xml-apis;1.0.b2'. 
Resolution will only pick dependencies of the relocated element. Artifacts and other metadata will be ignored. 

Irgendwelche Ideen, warum und wie man dieses Problem löst?

Antwort

4

Wenn Sie einen Blick auf das Artefakt nehmen in Maven Central und laden Sie die pom-Datei Sie diese:

<project> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>xml-apis</groupId> 
    <artifactId>xml-apis</artifactId> 
    <version>2.0.2</version> 
    <distributionManagement> 
    <relocation> 
    <groupId>xml-apis</groupId> 
    <artifactId>xml-apis</artifactId> 
    <version>1.0.b2</version> 
    </relocation> 
    </distributionManagement> 
</project> 

Dies bedeutet, dass das Artefakt unter der new coordinates gefunden werden, was bedeutet, Sie müssen die verwenden neue Koordinaten, um diesen Artikel zu verwenden. Ich nehme an, Sie haben dieses Artefakt nicht direkt über eine transitive Abhängigkeit verwendet. Das bedeutet, dass Sie die transitive Abhängigkeit mit den neuen Artefaktkoordinaten überschreiben müssen.

15
configurations.all { 
    resolutionStrategy { 
     force 'xml-apis:xml-apis:1.4.01' 
    } 
} 

Oder verwenden Sie 1.0.b2. Das Problem ist, dass POM von xml-apis für 2.0.2 (wie khmarbaise schrieb) zur selben Gruppe und Artefakt umleitet, nur Version 1.0.b2, was den Gradle (oder darunterliegenden Ivy) Auflösungsmechanismus täuscht.

Der Kredit geht an Mark Petrovic Gradle Forum

Verwandte Themen