Scala 构建Spark 0.5时未找到sbt部件

Scala 构建Spark 0.5时未找到sbt部件,scala,apache-spark,sbt,Scala,Apache Spark,Sbt,我正在尝试构建Spark的0.5分支,但它会引发错误: sbt.ResolveException:未解析的依赖项:com.eed3si9nsbt-assembly;0.8.3:未找到 因此,我手动从下载ivy和JAR,并将它们放在本地的.ivy文件夹中 具体而言,我在com.eed3si9n下创建了一个sbt程序集,并将文件重命名为: 然而,这是行不通的。正确的解决方案是什么?Spark branch-0.5根据使用了sbt 0.11.3,所以这已经很旧了 sbt社区存储库位置 project/

我正在尝试构建Spark的0.5分支,但它会引发错误:

sbt.ResolveException:未解析的依赖项:com.eed3si9nsbt-assembly;0.8.3:未找到

因此,我手动从下载ivy和JAR,并将它们放在本地的.ivy文件夹中

具体而言,我在com.eed3si9n下创建了一个sbt程序集,并将文件重命名为:

然而,这是行不通的。正确的解决方案是什么?

Spark branch-0.5根据使用了sbt 0.11.3,所以这已经很旧了

sbt社区存储库位置 project/plugins.sbt中有一个bug。它指向scalasbt.artifactoryonline.com,但应该指向repo.scala-sbt.org

JDK1.6 要运行旧版本的sbt,必须使用旧版本的JDK。在本例中,JDK1.6。然而,在macOS上,JDK1.6中的JLine有一个问题,所以我不得不禁用JLine

$ jenv shell 1.6
$ java -version
java version "1.6.0_65"
...
$ sbt/sbt -Djline.terminal=jline.UnsupportedTerminal
这将启动sbt shell。一旦出现,请键入:

> package
Spark branch-0.5根据使用了sbt 0.11.3,所以这已经很旧了

sbt社区存储库位置 project/plugins.sbt中有一个bug。它指向scalasbt.artifactoryonline.com,但应该指向repo.scala-sbt.org

JDK1.6 要运行旧版本的sbt,必须使用旧版本的JDK。在本例中,JDK1.6。然而,在macOS上,JDK1.6中的JLine有一个问题,所以我不得不禁用JLine

$ jenv shell 1.6
$ java -version
java version "1.6.0_65"
...
$ sbt/sbt -Djline.terminal=jline.UnsupportedTerminal
这将启动sbt shell。一旦出现,请键入:

> package

谢谢因为我认为从源代码的0.5分支到1.5分支的规模要小得多。顺便说一句,如何为不同版本的Spark确定正确的JDK版本?它主要取决于使用的Scala版本吗?基本上。您可以根据日期猜测稳定的JDK版本。JDK1.7是在2011年推出的,所以也许它也能工作,但JDK1.6会是一个更安全的选择。谢谢。由于0.5分支的源代码的规模要小得多,因此我认为最好阅读基于该分支的源代码。顺便说一句,如何为不同版本的Spark确定正确的JDK版本?它主要取决于使用的Scala版本吗?基本上。您可以根据日期猜测稳定的JDK版本。JDK1.7于2011年面世,所以它可能也能工作,但JDK1.6会是一个更安全的选择。我很好奇为什么你需要这么旧的Spark版本?@JacekLaskowski bcz我正在尝试完全理解它的源代码,而0.5分支是它的初始形式。因此,我认为这是一个很好的开始。玩得开心!我对结果有点怀疑。我宁愿从最新和最棒的代码开始,即使代码库可能是压倒性的。基地并没有发生太大的变化,即使它发生了变化,但更值得知道的是,现在的情况并没有回到过去,不是吗?。让我离线讨论它。我很好奇为什么你需要这么旧的Spark版本?@JacekLaskowski bcz我正在努力完全理解它的源代码,0.5 brach是它的初始形式。因此,我认为这是一个很好的开始。玩得开心!我对结果有点怀疑。我宁愿从最新和最棒的代码开始,即使代码库可能是压倒性的。基地并没有发生太大的变化,即使它发生了变化,但更值得知道的是,现在的情况并没有回到过去,不是吗?。让我离线讨论。