【问题标题】:spark sbt compile error libraryDependenciesspark sbt 编译错误 libraryDependencies
【发布时间】:2016-01-13 14:58:19
【问题描述】:

1.2.0-bin-hadoop2.4,我的 Scala 版本是2.11.7。我收到一个错误,所以我不能使用 sbt。

~/sparksample$ sbt

Starting sbt: invoke with -help for other options [info] Set current project to Spark Sample (in build file:/home/beyhan/sparksample/)

> sbt compile

[info] Updating {file:/home/beyhan/sparksample/}default-f390c8... [info] Resolving org.scala-lang#scala-library;2.11.7 ... [info] Resolving org.apache.spark#spark-core_2.11.7;1.2.0 ... [warn] module not found: org.apache.spark#spark-core_2.11.7;1.2.0 [warn] ==== local: tried [warn] /home/beyhan/.ivy2/local/org.apache.spark/spark-core_2.11.7/1.2.0/ivys/ivy.xml [warn] ==== public: tried [warn] http://repo1.maven.org/maven2/org/apache/spark/spark-core_2.11.7/1.2.0/spark-core_2.11.7-1.2.0.pom [warn] :::::::::::::::::::::::::::::::::::::::::::::: [warn] :: UNRESOLVED DEPENDENCIES :: [warn] :::::::::::::::::::::::::::::::::::::::::::::: [warn] :: org.apache.spark#spark-core_2.11.7;1.2.0: not found [warn] :::::::::::::::::::::::::::::::::::::::::::::: [error] {file:/home/beyhan/sparksample/}default-f390c8/*:update: sbt.ResolveException: unresolved dependency: org.apache.spark#spark-core_2.11.7;1.2.0: not found [error] Total time: 2 s, completed Oct 15, 2015 11:30:47 AM

有什么建议吗?谢谢

【问题讨论】:

  • 你能分享你的build.sbt 和其他sbt 文件吗?
  • name := "Spark Sample" 版本 := "1.2.0" scalaVersion := "2.11.7" libraryDependencies += "org.apache.spark" % "spark-core_2.11.7" % "1.2.0" Hocam bu dosya var ama bununla sparkın kendi bulunduğu dosya konumları farklı yerlerde.sıkıntı olur mu ?
  • libraryDependencies += "org.apache.spark" % "spark-core_2.11.7" % "1.2.0" 应该是 libraryDependencies += "org.apache.spark" % "spark-core_2.11" % "1.2.0"libraryDependencies += "org.apache.spark" %% "spark-core" % "1.2.0"。这里没有 spark path 这样的东西,因为这个依赖项是构建而不只是运行 spark 应用程序所必需的。此外,社区规则强烈要求您用英语提问/回答/评论。

标签: scala hadoop apache-spark sbt-assembly


【解决方案1】:

不存在spark-core_2.11.7 jar 文件。您必须摆脱 spark 依赖项中的维护版本号.7,因为存在spark-core_2.11。所有2.11 版本的Scala 版本都应该兼容。

更新

一个最小的 sbt 文件可能看起来像

name := "Simple Project"

version := "1.0"

scalaVersion := "2.11.7"

libraryDependencies += "org.apache.spark" %% "spark-core" % "1.5.1"

【讨论】:

  • 未解决的依赖项:org.scala-lang#scala-compiler;2.11:未找到未解决的依赖项:org.scala-lang#scala-library;2.11:未找到 sbt 执行期间的错误:需要检索错误库(有关完整日志,请参阅 /home/beyhan/.sbt/boot/update.log)[错误] {file:/home/beyhan/sparksample/}default-f390c8/*:scala-instance: xsbti.RetrieveException: 不能检索 Scala 2.11 [错误] 总时间:4 秒,完成于 2015 年 10 月 15 日下午 12:01:45 错误是变化,但我认为同样的错误:/
  • 对于 Scala 编译器,您应该保留维护版本号。因此,您的依赖项应该类似于 scala-compiler;2.11.7spark-core_2.11;1.2.0
  • 我已经更新了我的答案,加入了一个可以完成这项工作的最小 sbt 文件。
  • hmm 我应该把 jar 文件和这个 sbt 文件放在哪里?我收到相同的错误更新:sbt.ResolveException:未解决的依赖项:org.apache.spark#spark-core_2.11.7;1.2:未找到
  • 只需将 sbt 文件放在项目的根目录下即可。依赖项应该由 sbt 自动下载。
【解决方案2】:

正如@Till Rohrmann 建议的那样,没有spark-core_2.11.7 这样的东西,而且您的 build.sbt 似乎引用了该库。

我建议您编辑文件 /home/beyhan/sparksample/build.sbt 并删除对该库的引用。

正确的参考是:

libraryDependencies += "org.apache.spark" % "spark-core_2.11" % "1.2.0"

请记住,不仅spark-core 没有任何版本2.11.7,而且还有您可能正在使用的其他 spark 库。

【讨论】:

    【解决方案3】:

    [info] 正在更新 {file:/home/beyhan/sparksample/}default-f390c8... [info] Resolving org.scala-lang#scala-library;2.11.7 ... [info] Resolving org. apache.spark#spark-core_2.11.7;1.2.0 ... [警告] 未找到模块:org.apache.spark#spark-core_2.11.7;1.2.0 [警告] ==== 本地:尝试 [警告] /home/beyhan/.ivy2/local/org.apache.spark/spark-core_2.11.7/1.2.0/ivys/ivy.xml [警告] ==== 公开:尝试过[警告]

    【讨论】:

      猜你喜欢
      • 2021-03-23
      • 2014-12-01
      • 2016-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-07
      • 1970-01-01
      • 2015-09-12
      相关资源
      最近更新 更多