我遇到了一些问题,试图使用星火包,例如:
java.lang.ClassNotFoundException: Failed to find data source: com.mongodb.spark.sql.DefaultSource我在lib dir中列出了这些文件:
!find ~/data/libs/我可以看到我的罐子被安装了:
/gpfs/fs01/user/xxxx/data/libs/
/gpfs/fs01/user/xxxx/data/libs/scala-2.11
/gpfs/fs01/user/xxxx/data/libs/scala-2.11/mongo-spark-connector_2.11-2.0.0.jar
/gpfs/fs01/user/xxxx/data/libs/scala-2.11/mongo-java-driver-3.2.2.jar
/gpfs/fs01/user/xxxx/data/libs/pixiedust.jar
/gpfs/fs01/user/xxxx/data/libs/spark-csv_2.11-1.3.0.jar然而,这个错误意味着火花无法看到罐子。
我怎样才能列出可以引发火花的罐子呢?
发布于 2017-09-12 11:26:05
我创建了一个scala笔记本并运行了以下代码:
def urlses(cl: ClassLoader): Array[java.net.URL] = cl match {
case null => Array()
case u: java.net.URLClassLoader => u.getURLs() ++ urlses(cl.getParent)
case _ => urlses(cl.getParent)
}
val urls = urlses(getClass.getClassLoader)
println(urls.filterNot(_.toString.contains("ivy")).mkString("\n"))归因:https://gist.github.com/jessitron/8376139
运行此操作会突出显示jvm加载mongodb驱动程序时出现的问题:
error: error while loading <root>, Error accessing /gpfs/fs01/user/xxxx/data/libs/scala-2.11/mongo-java-driver-3.2.2.jar
error: scala.reflect.internal.MissingRequirementError: object java.lang.Object in compiler mirror not found.这让我意识到,虽然jar文件位于正确的位置,但并没有正确地加载到jvm中。
https://stackoverflow.com/questions/46175194
复制相似问题