2014-12-29 17 views
5

Próbuję rozwiązać zależność w fazie konfiguracji za pomocą wtyczki stopniowania artystycznego.Wtyczka sztuczna Gradle nie może rozstrzygnąć zależności w fazie konfiguracji

apply plugin: 'java' 
apply plugin: 'com.jfrog.artifactory' 

artifactory { 
    contextUrl = "${artifactory_contextUrl}" 
    ... 
    resolve { 
    repository { 
     repoKey = 'repo' 
     username = "${artifactory_user}" 
     password = "${artifactory_password}" 
     maven = true 
    } 
    } 
} 

dependencies { 
    compile 'commons-lang:commons-lang:+' 
} 

task testCustomResolve { 
    logger.quiet configurations.getByName('compile').singleFile.absolutePath 
} 

I to daje mi

Nie można rozwiązać wszystkie zależności do konfiguracji 'kompilacji'. Nie można rozwiązać zależności zewnętrznej commons-lang: commons-lang: +, ponieważ nie zdefiniowano repozytoriów.

To działa jak czar w fazie realizacji

task testCustomResolve << { 
    logger.quiet configurations.getByName('compile').singleFile.absolutePath 
} 

lub gdy używam mavenCentral()

repositories { 
    mavenCentral() 
} 
+0

Spróbuj umieścić swoją definicję zadania w bloku 'afterEvaluate {...}'. –

+0

Czy kiedykolwiek to rozgryzłeś? Otrzymuję ten sam błąd. W moim przypadku wydaje się, że działa dobrze, gdy uruchamiam rzeczywistą kompilację, ale pojawia się błąd podczas próby wyświetlenia listy wszystkich zadań ... – Trejkaz

+0

Występuje również ten sam błąd. Dość frustrujące ... – zedix

Odpowiedz

0

W przypadku, gdy nie trzeba publikować Artifactory, zauważyłem, że działa lepiej, jeśli nie używasz składni artifactory {}. Zamiast tego spróbuj użyć:

plugins { 
    id "com.jfrog.artifactory" version "4.4.10" 
} 

repositories { 
    mavenLocal() 
    maven { 
     url "${artifactory_contextUrl}/${artifactory_repo}" 
     credentials { 
      username = "${artifactory_user}" 
      password = "${artifactory_password}" 
     } 
    } 
    mavenCentral() 
} 
Powiązane problemy