2013-07-04 15 views
5

Mam błąd kompilacji z następującym build.gradle.gradle - nie można znaleźć zależności od maven repo

apply plugin: 'java' 
apply plugin: 'idea' 

sourceCompatibility = 1.7 
version = '1.0' 

repositories { 
    mavenLocal() 
    mavenCentral() 
} 

dependencies { 
    compile 'org.foo.group:my-artifact:0.0.1-final' 
} 

grupa, artefakt i wersja są poprawne. Próbowałem go z projektu maven i kompilacja przebiegła pomyślnie, ale w Gradle projektu daje mi następujący błąd:

:jar UP-TO-DATE 
:assemble UP-TO-DATE 
:compileTestJava UP-TO-DATE 
:processTestResources UP-TO-DATE 
:testClasses UP-TO-DATE 
:test 

FAILURE: Build failed with an exception. 

* What went wrong: 
Could not resolve all dependencies for configuration ':testRuntime'. 
> Could not find org.foo.group:my-artifact:0.0.1-final. 
    Required by: 
     :my-gradle-project:1.0 

* Try: 
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. 
tlin-deploy-tool 
BUILD FAILED 
+0

Dzieje się tak wtedy, gdy lokalne repo Maven zawiera modułu POM, ale nie jego artefakt. Czy tak jest? –

+0

@Peter: Nie, to nie jest problem. nawet jeśli usuniesz artefakt z lokalnego repo, wywoła to ten sam błąd. – mhshams

+1

Dla odniesienia, jeśli stoisz w obliczu sytuacji opisanej przez @PeterNiederwieser, istnieje szansa, że ​​trafisz [Zależność w Maven lokalny z POM i żaden plik JAR nie spowoduje niepowodzenia rozwiązania zależności] (https://issues.gradle.org/browse/ GRADLE-2709) – Alberto

Odpowiedz

8

Nie jestem pewien, co poszło źle, ale starają się sprawdzić, czy są Maven i Gradle przy użyciu tej samej ścieżki do repozytorium .m2. Powinien on być umieszczony w widocznym z tych opcji:

  • mvn -X
  • Gradle --debug

Dla Gradle, ten konkretny komunikat zostanie pokazany podczas słoik nie można znaleźć z MavenLocal ; .m2 ścieżka repozytorium zostaną pokazane:

23:44:08.152 [DEBUG] [org.gradle.api.internal.artifacts.repositories.resolver.ExternalResourceResolver] Resource not reachable for org.foo.group#my-artifact;0.0.1-final: res=MissingResource: /home/wisent/.m2/repository/org/foo/group/my-artifact/0.0.1-final/my-artifact-0.0.1-final.jar

+0

dzięki za to. brakowało rodzica pom w głównym repozytorium mavenów. – mhshams

+0

Ale twój projekt może zbudować go z tą samą zależnością. Dziwne. – ceilfors

+0

tak, wydaje się, że maven nie dba o rodzica pom. – mhshams

Powiązane problemy