2017-01-23 4 views
1

In meinem SBT-basierten Scala-Projekt versuche ich, eine verwaltete Abhängigkeit von einem von meiner Organisation bereitgestellten Artefaktserver abzurufen.SBT ehrt keinen benutzerdefinierten Resolver

Wenn ich jedoch mein Projekt erstelle, sucht sbt nicht nach der Abhängigkeit von diesem Server und schlägt fehl.

Ich habe die Efeu Anmeldeinformationen korrekt festgelegt und auch überprüft, dass die Abhängigkeit an der angegebenen Stelle auf Artefaktory (gründliche Weboberfläche) existiert.

Das ist Projekt/plugins.sbt:

logLevel := Level.Warn 

resolvers += "my-library" at "https://artifactory.myorg.com/artifactory/libs-release-local" 

credentials := (Path.userHome/".ivy2"/"credentials" ** "*").filter(_.isFile).get.map(Credentials(_)) 

Dies ist build.sbt:

name := "untitled" 

version := "1.0" 

scalaVersion := "2.10.6" 

libraryDependencies ++= Seq(
    "com.myorg" %% "my-library" % "1.0.21" 
) 

Ausgang:

sbt clean compile 
[info] Loading project definition from /Users/tsudake/untitled/project 
[info] Set current project to untitled (in build file:/Users/tsudake/untitled/) 
[success] Total time: 0 s, completed 23 Jan, 2017 4:04:48 PM 
[info] Updating {file:/Users/tsudake/untitled/}untitled... 
[info] Resolving com.myorg#my-library_2.10;1.0.21 ... 
[warn] module not found: com.myorg#my-library_2.10;1.0.21 
[warn] ==== local: tried 
[warn] /Users/tsudake/.ivy2/local/com.myorg/my-library_2.10/1.0.21/ivys/ivy.xml 
[warn] ==== public: tried 
[warn] https://repo1.maven.org/maven2/com/myorg/my-library_2.10/1.0.21/my-library_2.10-1.0.21.pom 
[info] Resolving org.fusesource.jansi#jansi;1.4 ... 
[warn] :::::::::::::::::::::::::::::::::::::::::::::: 
[warn] ::   UNRESOLVED DEPENDENCIES   :: 
[warn] :::::::::::::::::::::::::::::::::::::::::::::: 
[warn] :: com.myorg#my-library_2.10;1.0.21: not found 
[warn] :::::::::::::::::::::::::::::::::::::::::::::: 
[warn] 
[warn] Note: Unresolved dependencies path: 
[warn]  com.myorg:my-library_2.10:1.0.21 (/Users/tsudake/untitled/build.sbt#L7-11) 
[warn]  +- default:untitled_2.10:1.0 
sbt.ResolveException: unresolved dependency: com.myorg#my-library_2.10;1.0.21: not found 
    at sbt.IvyActions$.sbt$IvyActions$$resolve(IvyActions.scala:291) 
    at sbt.IvyActions$$anonfun$updateEither$1.apply(IvyActions.scala:188) 
    at sbt.IvyActions$$anonfun$updateEither$1.apply(IvyActions.scala:165) 
    at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:155) 
    at sbt.IvySbt$Module$$anonfun$withModule$1.apply(Ivy.scala:155) 
    at sbt.IvySbt$$anonfun$withIvy$1.apply(Ivy.scala:132) 
    at sbt.IvySbt.sbt$IvySbt$$action$1(Ivy.scala:57) 
    at sbt.IvySbt$$anon$4.call(Ivy.scala:65) 
    at xsbt.boot.Locks$GlobalLock.withChannel$1(Locks.scala:93) 
    at xsbt.boot.Locks$GlobalLock.xsbt$boot$Locks$GlobalLock$$withChannelRetries$1(Locks.scala:78) 
    at xsbt.boot.Locks$GlobalLock$$anonfun$withFileLock$1.apply(Locks.scala:97) 
    at xsbt.boot.Using$.withResource(Using.scala:10) 
    at xsbt.boot.Using$.apply(Using.scala:9) 
    at xsbt.boot.Locks$GlobalLock.ignoringDeadlockAvoided(Locks.scala:58) 
    at xsbt.boot.Locks$GlobalLock.withLock(Locks.scala:48) 
    at xsbt.boot.Locks$.apply0(Locks.scala:31) 
    at xsbt.boot.Locks$.apply(Locks.scala:28) 
    at sbt.IvySbt.withDefaultLogger(Ivy.scala:65) 
    at sbt.IvySbt.withIvy(Ivy.scala:127) 
    at sbt.IvySbt.withIvy(Ivy.scala:124) 
    at sbt.IvySbt$Module.withModule(Ivy.scala:155) 
    at sbt.IvyActions$.updateEither(IvyActions.scala:165) 
    at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala:1369) 
    at sbt.Classpaths$$anonfun$sbt$Classpaths$$work$1$1.apply(Defaults.scala:1365) 
    at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$87.apply(Defaults.scala:1399) 
    at sbt.Classpaths$$anonfun$doWork$1$1$$anonfun$87.apply(Defaults.scala:1397) 
    at sbt.Tracked$$anonfun$lastOutput$1.apply(Tracked.scala:37) 
    at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1402) 
    at sbt.Classpaths$$anonfun$doWork$1$1.apply(Defaults.scala:1396) 
    at sbt.Tracked$$anonfun$inputChanged$1.apply(Tracked.scala:60) 
    at sbt.Classpaths$.cachedUpdate(Defaults.scala:1419) 
    at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1348) 
    at sbt.Classpaths$$anonfun$updateTask$1.apply(Defaults.scala:1310) 
    at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47) 
    at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40) 
    at sbt.std.Transform$$anon$4.work(System.scala:63) 
    at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:226) 
    at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:226) 
    at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17) 
    at sbt.Execute.work(Execute.scala:235) 
    at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226) 
    at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226) 
    at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:159) 
    at sbt.CompletionService$$anon$2.call(CompletionService.scala:28) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at java.lang.Thread.run(Thread.java:745) 
[error] (*:update) sbt.ResolveException: unresolved dependency: com.myorg#my-library_2.10;1.0.21: not found 
[error] Total time: 3 s, completed 23 Jan, 2017 4:04:52 PM 

Wie Sie sehen können, prüft sbt nur Maven und lokales Repo und ignoriert Artefakte vollständig.

Antwort

3

Sie haben Artefaktory als neues Repository für Plugins hinzugefügt (in der plugin.sbt), aber Sie benötigen es als Repository für Abhängigkeiten (fügen Sie diesen Resolver einfach zu build.sbt hinzu).

+0

Ah habe ich das vermisst :). Groß! es funktioniert jetzt. –

1

Sie müssen sich mit dieser

resolvers += "my-library" at "https://artifactory.myorg.com/artifactory/libs-release-local" 

build.sbt

so bewegen Ihre build.sbt sollte wie folgt aussehen:

name := "untitled" 

version := "1.0" 

scalaVersion := "2.10.6" 

libraryDependencies ++= Seq(
    "com.myorg" %% "my-library" % "1.0.21" 
) 

resolvers += "my-library" at "https://artifactory.myorg.com/artifactory/libs-release-local" 

und Ihre plugins.sbt ist dies:

logLevel := Level.Warn 

credentials := (Path.userHome/".ivy2"/"credentials" ** "*").filter(_.isFile).get.map(Credentials(_)) 
Verwandte Themen