2013-05-06 9 views
7

Próbuję użyć banana-RDF, lokalnie opublikowanej biblioteki (opublikowanej za pomocą SBT's publish-local) z gry! Projekt ramowy, ale po uruchomieniu compile z konsoli Play, pożądana biblioteka nie jest rozwiązana, podczas korzystania z compile z konsoli SBT wszystko idzie dobrze.Lokalne zależności rozwiązane przez SBT, ale nie przez Play! Framework

Uważam, że to zachowanie jest dość dziwne, ponieważ Play używa SBT do rozwiązywania zależności. Nawiasem mówiąc, używam wersji SBT 0.12.3 w moim projekcie Play.

Błąd Dostaję podczas kompilacji z luzem jest dość prosty:

[warn] module not found: org.w3#banana_2.10;2013_02_21-SNAPSHOT    
[warn] ==== local: tried 
[warn] /home_local/.installedSoftware/play-2.1.1/repository/local/org.w3/banana_2.10/2013_02_21-SNAPSHOT/ivys/ivy.xml 
[warn] ==== Typesafe Releases Repository: tried 
[warn] http://repo.typesafe.com/typesafe/releases/org/w3/banana_2.10/2013_02_21-SNAPSHOT/banana_2.10-2013_02_21-SNAPSHOT.pom 
[warn] ==== Typesafe Snapshots Repository: tried 
[warn] http://repo.typesafe.com/typesafe/snapshots/org/w3/banana_2.10/2013_02_21-SNAPSHOT/banana_2.10-2013_02_21-SNAPSHOT.pom 
[warn] ==== Akka Snapshots: tried 
[warn] http://repo.akka.io/snapshots/org/w3/banana_2.10/2013_02_21-SNAPSHOT/banana_2.10-2013_02_21-SNAPSHOT.pom 
[warn] ==== OSS117: tried 
[warn] http://oss.sonatype.org/content/repositories/snapshots/org/w3/banana_2.10/2013_02_21-SNAPSHOT/banana_2.10-2013_02_21-SNAPSHOT.pom 
[warn] ==== Local Maven Repository: tried 
[warn] file:///home_local/.m2/repository/org/w3/banana_2.10/2013_02_21-SNAPSHOT/banana_2.10-2013_02_21-SNAPSHOT.pom 
[warn] ==== Local SBT Repository: tried 
[warn] file:///home_local/.ivy2/local/org/w3/banana_2.10/2013_02_21-SNAPSHOT/banana_2.10-2013_02_21-SNAPSHOT.pom 
[warn] ==== public: tried 
[warn] http://repo1.maven.org/maven2/org/w3/banana_2.10/2013_02_21-SNAPSHOT/banana_2.10-2013_02_21-SNAPSHOT.pom 

Może ktoś wyjaśnić, co tu się dzieje? Z góry dziękuję.

Odpowiedz

23

Problemem jest to, że SBT na publish-local publikuje swoją bibliotekę do ~/.ivy2/local, natomiast Gra wydaje się mieć swój ivy2 lokalny wskaźnik repozytorium do repozytorium ivy2 własnego folderu instalacyjnego (twój /home_local/.installedSoftware/play-2.1.1/repository/local).

można dodać na przykład ten resolverowi do Twojego Play Build.scala:

resolvers += Resolver.file("Local repo", file(System.getProperty("user.home") + "/.ivy2/local"))(Resolver.ivyStylePatterns) 
+0

Jest to bardzo przydatne dla mnie, dziękuję. –

+0

O dziwo, to nie działa dla mnie (SBT 0.13). Monitoruję aktywność plików systemowych, a program SBT nawet nie próbuje przejść do wyżej wspomnianego folderu. – expert

Powiązane problemy