2016-05-10 6 views
0

Ich habe folgende benutzerdefinierten Repository-URL für ein Plugin, das ich versuche, in meiner Anwendung zu laden:Begrenzung der Auflösung von Abhängigkeiten, um benutzerdefinierte Repository

https://server.com/artifactory/plugins-release-local/abc/pluginXYZ/r181/pluginXYZ-r181.jar

In meiner build.gradle Datei:

... 
repositories { 
    mavenLocal() 
    maven { url 'https://repo.grails.org/grails/core' } 
    //custom Artifactory repository 
    maven { url 'https://server.com/artifactory/plugins-release-local' } 
} 
... 
dependencies { 
    compile "abc:pluginXYZ:r181" 
} 

Als nächstes versuchen Sie zu kompilieren:

[email protected] ~/my_app 
$ grails compile 
[buildinfo] Not using buildInfo properties file for this build. 

BUILD SUCCESSFUL 

Total time: 3.906 secs 
Error | 
Could not resolve all dependencies for configuration ':testRuntime'. Type 'gradle dependencies' for more information 

Als nächstes versuchen Abhängigkeitsprobleme zu diagnostizieren:

[email protected] ~/my_app 
$ ./gradlew dependencies --info | grep missing 
Resource missing. [HTTP HEAD: https://repo.grails.org/grails/core/abc/pluginXYZ/r181/wetkit-r181.pom] 
Resource missing. [HTTP HEAD: https://repo.grails.org/grails/core/abc/pluginXYZ/r181/wetkit-r181.jar] 

In diesem Fall wird pluginXYX nie auf repo.grails.org finden. Wie kann ich die Auflösung auf mein benutzerdefiniertes Artifactory-Repository beschränken?

Antwort

0

Hier ist meine Lösung. Ich habe den maven closure im Wesentlichen überarbeitet und ein attractUrls-Attribut bereitgestellt.

... 
repositories { 
    mavenLocal() 
    maven { 
     url "https://repo.grails.org/grails/core" 
     artifactUrls "https://server.com/artifactory/plugins-release-local" 
    } 
} 
... 
dependencies { 
    ... 
    compile "abc:pluginXYZ:r181" 
} 
... 

auch: Example 23.30. Adding additional Maven repositories for JAR files

Verwandte Themen