Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark cassandra依赖项问题:找不到CassandraJavaUtil_Apache Spark - Fatal编程技术网

Apache spark cassandra依赖项问题:找不到CassandraJavaUtil

Apache spark cassandra依赖项问题:找不到CassandraJavaUtil,apache-spark,Apache Spark,我尝试启动一个只从cassandra数据库读取表的小应用程序 已发布带有spark submmit的应用程序: /opt/spark/bin/spark submit--class com.baitic.mcava.pruebacassandra.pruebacassandrabdd--masterspark://192.168.1.105:7077 --executor memory 1G/home/miren/NetBeansProjects/PruebaCassandra/target/

我尝试启动一个只从cassandra数据库读取表的小应用程序

已发布带有spark submmit的应用程序:

  • /opt/spark/bin/spark submit--class com.baitic.mcava.pruebacassandra.pruebacassandrabdd--masterspark://192.168.1.105:7077 --executor memory 1G/home/miren/NetBeansProjects/PruebaCassandra/target/original-PruebaCassandra-1.0-SNAPSHOT.jar——部署模式集群
在启动输出之前,只显示输出的断点,其余部分工作正常:

16/02/25 11:18:34信息SparkDeploysSchedulerBackend:SchedulerBackend在到达minRegisteredResourcesRatio:0.0后已准备好进行调度 线程“main”java.lang.NoClassDefFoundError中出现异常:com/datastax/spark/connector/japi/CassandraJavaUtil 位于com.baitic.mcava.pruebacassandra.PruebaCassandraBBDD.main(PruebaCassandraBBDD.java:71) 在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处 位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中 位于java.lang.reflect.Method.invoke(Method.java:498) 位于org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:731) 位于org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:181) 位于org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:206) 位于org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:121) 位于org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala) 原因:java.lang.ClassNotFoundException:com.datastax.spark.connector.japi.CassandraJavaUtil 位于java.net.URLClassLoader.findClass(URLClassLoader.java:381) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:424) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 10多

我创建了一个maven java应用程序,然后将pom.xml与必要的依赖项放在一起:

org.apache.spark spark-core_2.10 1.6.0


确保在导入语句中包含以下内容:

import static com.datastax.spark.connector.japi.CassandraJavaUtil.*;
如果使用任何自定义类运行此代码,则需要使用以下参数将jar文件路径添加到spark-defaults.conf文件中:

spark.driver.extraClassPath     /whateverpath/to/file/

确保在导入语句中包含以下内容:

import static com.datastax.spark.connector.japi.CassandraJavaUtil.*;
如果使用任何自定义类运行此代码,则需要使用以下参数将jar文件路径添加到spark-defaults.conf文件中:

spark.driver.extraClassPath     /whateverpath/to/file/

尝试在spark submit命令中使用--jars选项。下载cassandra jar并在--jars选项中指定cassandra jar的名称,或在spark env文件中将其指定为extraClassPath。

尝试在spark submit命令中使用--jars选项。下载cassandra jar并在--jars选项中指定cassandra jar的名称,或者在spark env文件中将其指定为extraClassPath。

是的,我有所有导入,并且我不使用任何自定义类。我不明白为什么会出现此错误。更改此行:
import static com.datastax.spark.connector.japi.CassandraJavaUtil.javaFunctions
to
import static com.datastax.spark.connector.japi.CassandraJavaUtil.*我做了,但我有相同的错误。我对它非常困惑是的,我有所有的导入,并且我没有使用任何自定义类。我不明白为什么会出现此错误。更改此行:
import static com.datastax.spark.connector.japi.CassandraJavaUtil.javaFunctions
to
import static com.datastax.spark.connector.japi.CassandraJavaUtil.*我做了,但我有相同的错误。我对iti插件spark-default.sh的两个选项spark spark.driver.extraClassPath PATHOFTHECASSANDRAJAVAJAR和spark.executor.extraClassPath PATHOFTHECASSANDRAJAVAJAR感到非常困惑,但我有相同的错误。我还在应用程序代码中添加了setJars()中的相同路径。我在env.sh中找不到变量extra_pathclass,请尝试在spark submit命令中使用选项--jars“path to cassandra jar”,并告诉我它是否有效。尝试类似spark submit的东西——master Thread client——executor memory 4g——num executors 4——driver memory 5g——jars/home/rgulai/spark_jars/commons-csv-1.2.jar、/home/rgulai/spark_jars/spark-csv_2.10-1.0.jar我认为最好在de spark上下文中添加jars的路径……我做到了,并且工作得很完美。您还可以将此路径放在spark-default.sh(spark.driver.extraclasspark.executor.extraclassPath)中。在我的部署中,我在spark-default.sh中编写jar路径,并在java代码中的spark conf中添加jar路径,这是一个完美的工作方式。对不起我的英语…是的,米伦,你可以这样做。我建议使用上述方法,因为您之前提到,在spark-default.sh中添加路径后,仍然会出现相同的错误。但我很高兴它终于成功了。我添加了spark-default.sh两个选项spark spark.driver.extraClassPath pathofthePassandrajavajar和spark.executor.extraClassPath pathofthePassandrajavajar,但我有同样的错误。我还在应用程序代码中添加了setJars()中的相同路径。我在env.sh中找不到变量extra_pathclass,请尝试在spark submit命令中使用选项--jars“path to cassandra jar”,并告诉我它是否有效。尝试类似spark submit的东西——master Thread client——executor memory 4g——num executors 4——driver memory 5g——jars/home/rgulai/spark_jars/commons-csv-1.2.jar、/home/rgulai/spark_jars/spark-csv_2.10-1.0.jar我认为最好在de spark上下文中添加jars的路径……我做到了,并且工作得很完美。您还可以将此路径放在spark-default.sh(spark.driver.extraclasspark.executor.extraclassPath)中。在我的部署中,我在spark-default.sh中编写jar路径,并在java代码中的spark conf中添加jar路径,这是一个完美的工作方式。对不起我的英语…是的,米伦,你可以这样做。我建议以上方法是因为你