spark sbt with graphx



我是 scala 和 sbt 的新手,所以我不确定为什么会出现错误。

以下是我的构建.sbt

name := "graphx-example"
version := "1.0"
scalaVersion := "2.11.8"
libraryDependencies ++= Seq(
  "com.typesafe" % "config" % "1.3.1",
  "org.scalatest" % "scalatest_2.11" % "3.0.4" % "test",
  "org.apache.spark" % "spark-core_2.11" % "2.2.0",
  "org.apache.spark" % "spark-sql_2.11" % "2.2.0" % "provided",
  "org.apache.spark" % "spark-graphx_2.11" % "1.2.1" % "provided"
)

但是我收到以下错误:

[error] (run-main-0) java.lang.NoClassDefFoundError: org/apache/spark/sql/SQLContext
java.lang.NoClassDefFoundError: org/apache/spark/sql/SQLContext
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
    at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
    at java.lang.Class.getMethod0(Class.java:3018)
    at java.lang.Class.getMethod(Class.java:1784)
Caused by: java.lang.ClassNotFoundException: org.apache.spark.sql.SQLContext
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
    at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
    at java.lang.Class.getMethod0(Class.java:3018)
这是

版本不匹配。您使用:

  • 火花 2.2
  • 图X 1.2.

所有 Spark 组件都应具有相同的主要版本。

此外,你的provided似乎不对。通常,您应该提供所有 Spark 库,或者没有。

最新更新