Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala SBT赢得';t解决对除Typesafe'之外的任何存储库的可传递依赖性;s_Scala_Maven_Sbt - Fatal编程技术网

Scala SBT赢得';t解决对除Typesafe'之外的任何存储库的可传递依赖性;s

Scala SBT赢得';t解决对除Typesafe'之外的任何存储库的可传递依赖性;s,scala,maven,sbt,Scala,Maven,Sbt,我有一个无法解决的可传递依赖性,我为此非常恼火 具体的依赖关系是org.apache.maven.wagen#wagen provider api;1.0-beta-2!虽然我不确定哪一个直接依赖项包含了它,但我还是不知道 该文件在默认的Maven repo上处于活动状态。然而,出于某种原因,SBT只是拒绝在那里检查它,尽管它很乐意在那里查找其他依赖项: [warn] [NOT FOUND ] org.apache.maven.wagon#wagon-provider-api;1.0-bet

我有一个无法解决的可传递依赖性,我为此非常恼火

具体的依赖关系是
org.apache.maven.wagen#wagen provider api;1.0-beta-2!虽然我不确定哪一个直接依赖项包含了它,但我还是不知道

该文件在默认的Maven repo上处于活动状态。然而,出于某种原因,SBT只是拒绝在那里检查它,尽管它很乐意在那里查找其他依赖项:

[warn]  [NOT FOUND  ] org.apache.maven.wagon#wagon-provider-api;1.0-beta-2!wagon-provider-api.jar (52ms)
[warn] ==== Typesafe Releases Repository: tried
[warn]   http://repo.typesafe.com/typesafe/releases/org/apache/maven/wagon/wagon-provider-api/1.0-beta-2/wagon-provider-api-1.0-beta-2.jar
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  ::              FAILED DOWNLOADS            ::
[warn]  :: ^ see resolution messages for details  ^ ::
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  :: org.apache.maven.wagon#wagon-provider-api;1.0-beta-2!wagon-provider-api.jar
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[error] (*:update) sbt.ResolveException: download failed: org.apache.maven.wagon#wagon-provider-api;1.0-beta-2!wagon-provider-api.jar
[error] Total time: 3 s, completed Mar 23, 2013 7:22:05 PM
我已经从我的主目录中删除了
.ivy2
.m2
.sbt
。我已经运行了
sbt更新
。我已经一遍又一遍地运行了
play clean
play clean all
。从SBT提示符运行解析程序显示Maven repo在列表中

我试着下载jar并将其添加到我的常春藤缓存、常春藤存储库和我的游戏中!存储库

还有什么可以尝试的

My Build.scala:

import sbt._
import Keys._
import play.Project._

object ApplicationBuild extends Build {

  val appName         = "conspire"
  val appVersion      = "1.0-SNAPSHOT"

  val appDependencies = Seq(
    // Add your project dependencies here,
    javaCore,
    javaJdbc,
    "mysql" % "mysql-connector-java" % "5.1.18",
    "org.apache.cayenne.plugins" % "maven-cayenne-plugin" % "3.0.2",
    "org.objectstyle.ashwood" % "ashwood" % "2.0",
    "commons-collections" % "commons-collections" % "3.1",
    "commons-lang" % "commons-lang" % "2.6",
    "commons-logging" % "commons-logging" % "1.1"
  )

  val main = play.Project(appName, appVersion, appDependencies).settings(
    externalResolvers += "Local Maven Repository" at "file:///"+Path.userHome+"/.m2/repository",
    resolvers ++= Seq(DefaultMavenRepository,
                      "Objectstyle repository" at " http://objectstyle.org/maven2/")
  )

}
试一试

而不是

resolvers ++= // which appends to current resolvers
不过,不要问我解释,因为我不知道它为什么有效。只是JUnit遇到了类似的问题,并建议这样做,这有助于…

而不是:

resolvers :=  
(其缺点是不允许使用多个解析器。)我发现

resolvers += 

工作正常,不会出现OP中的错误。

我也有类似的问题。但SBT甚至会在maven回购协议中搜索,它说的链接不起作用,实际上起作用

我通过在默认播放stuf之前移动自己的依赖项来解决这个问题:

之前

val appDependencies = Seq(
    // Add your project dependencies here,
    javaCore,
    javaJdbc,
    "mysql" % "mysql-connector-java" % "5.1.32"
  )
之后

val appDependencies = Seq(
    "mysql" % "mysql-connector-java" % "5.1.32",
    javaCore,
    javaJdbc    
  )

希望这对其他人有帮助。干杯

sbt总是按照指定的顺序由决议者决定。可能发生的情况是,其中一个存储库中存在一个坏的ivy.xml/pom.xml文件,使sbt感到困惑,因此它认为必须从找到它的第一个位置提取该文件,实际上这是一个坏的存储库。
val appDependencies = Seq(
    "mysql" % "mysql-connector-java" % "5.1.32",
    javaCore,
    javaJdbc    
  )