spark standalone cluster vs Eclipse classnonfoundexeption



我使用Eclipse IDE,将来自Spark的所有jar添加到我的项目中作为"添加外部jars",使用Spark-Cassandra连接器。使用独立群集。我的代码示例代码是:

import com.datastax.spark.driver._
import com.datastax.spark.connector._
import org.apache.spark.{SparkConf, SparkContext}
object connect extends App {
val conf = new SparkConf(true).setMaster("spark://192.168.0.1:7077").setAppName("test").set("spark.cassandra.connection.host","192.168.0.2")
val sc = new SparkContext(conf)
val rdd = sc.cassandraTable("ks", "tbl")

如果我尝试使用println(rdd.count)一切正常,但是如果我使用val filterRdd = rdd.filter(x => x.getString(1).contains("teststr")) println (filterRdd.count)我会得到 ClassNonFoundException。

它不仅对于Cassandra,RDD的每个操作都会导致错误。 本地本地主控 它完美运行。

我怎样才能让它工作,我的笔记本电脑无法连接到互联网,所以我无法使用 maven,所以我下载了所有 jar 并将其导出到本地。在每个火花从属设备上,我都放了火花-卡桑德拉-连接器.jar

我解决了。只需将我的项目导出为 Eclipse 中本地文件夹中的 jar 并在我的代码中添加sc.addJars("localPathToJar")即可工作

最新更新