【发布时间】:2017-01-06 16:34:48
【问题描述】:
spark 和 scala 的新手。我正在尝试通过 intellij-idea 执行一个非常简单的 spark 程序。它所做的只是:
- 将 mongodb 数据库连接到特定集合
- 加载数据
- 打印第一条记录。
它工作正常,但现在它抛出错误:
org.bson.codecs.configuration.CodecConfigurationException:找不到 类 java.lang.Class 的编解码器。
这是我的代码:
import org.apache.spark.{SparkConf, SparkContext}
import com.mongodb.spark._
import com.mongodb.spark.rdd.MongoRDD
import org.bson.Document
import com.mongodb.spark.config._
import org.apache.spark.sql.SQLContext
import com.mongodb.spark.sql._
import scala.reflect.runtime.universe._
object Analytics1 {
def main(args: Array[String]) {
val conf = new SparkConf().setAppName("Analytics1").setMaster("local").
set("spark.mongodb.input.uri","mongodb://192.168.56.1:27017/events.entEvent")
.set("spark.mongodb.output.uri", "mongodb://192.168.56.1:27017/events..entResult")
val sc = new SparkContext(conf)
val rdd = sc.loadFromMongoDB()
println(rdd.first())
sc.stop()
}
}
这是我的 .sbt。如果我使用最新版本的 spark,那么它会抛出这个错误
线程“主”java.lang.NoClassDefFoundError 中的异常: org/apache/spark/sql/DataFrame
所以我使用的是 1.6.1,直到几天前都可以正常工作,但现在它正在抛出
java.lang.class
错误。有人请帮忙,这样我就可以动起来了。由于这是非常基本的,我希望有人会提出一些建议并让我畅通无阻。
谢谢。
name := "Simple Project"
version := "1.0"
scalaVersion := "2.11.7"
// libraryDependencies += "org.apache.spark" %% "spark-core" % "1.6.1"
libraryDependencies += "org.apache.spark" %% "spark-core" % "1.6.1"
//libraryDependencies += "org.apache.spark" % "spark-mllib_2.11" % "1.6.1"
libraryDependencies += "org.apache.spark" %% "spark-mllib" % "1.6.1"
//libraryDependencies += "org.mongodb.spark" % "mongo-spark-connector_2.10" % "1.1.0"
libraryDependencies += "org.mongodb.spark" %% "mongo-spark-connector" % "1.1.0"
libraryDependencies += "org.mongodb.scala" %% "mongo-scala-driver" % "1.2.1"
libraryDependencies += "org.apache.spark" %% "spark-sql" % "1.6.1"
resolvers += "Akka Repository" at "http://repo.akka.io/releases/"
resolvers += "snapshots" at "https://oss.sonatype.org/content/repositories/snapshots/ "
resolvers += "releases" at "https://oss.sonatype.org/content/repositories/releases/"
【问题讨论】:
-
寻找这个问题的答案的人,请阅读下面Wan的所有cmet。
标签: mongodb scala apache-spark intellij-idea