我正在使用我们拥有自定义hadoop 2.4的集群。我正在尝试使用带有火花组件的talend。 对于tSparkConnection组件,我设置了相关的SparkHost,SparkHome。
对于分发,两个可用选项是Cloudera和Custom(不支持)。 选择“自定义(不支持)”分发时,可以选择自定义Hadoop版本以包含相关性库。 这里提供的选项包括:Cloudera,HortonWorks,MapR,Apache,Amazon EMR,PivotalHD。然而对我来说,当我选择Cloudera时,它附带了Hadoop 2.3并且我假设所有必需的库都缺失了,因此我得到一个“NoClassDefFoundError”,这导致无法通过Spark连接在Spark中加载文件。顺便说一句,我的火花版本是1.0.0
我想知道如何解决这个问题以及如何使用Hadoop 2.4运行此版本的Spark。
错误将复制并粘贴到下方:
[statistics] connecting to socket on port 3637
[statistics] connected
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/spark/api/java/JavaSparkContext
at sparktest.sparktest_0_1.sparktest.tSparkConnection_2Process(sparktest.java:491)
at sparktest.sparktest_0_1.sparktest.runJobInTOS(sparktest.java:1643)
at sparktest.sparktest_0_1.sparktest.main(sparktest.java:1502)
Caused by: java.lang.ClassNotFoundException: org.apache.spark.api.java.JavaSparkContext
at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 3 more
[statistics] disconnected
Job sparktest ended at 13:19 21/10/2014. [exit code=1]
谢谢!
答案 0 :(得分:0)
是CDH 5.0.0包含Hadoop 2.3。 Hadoop 2.4.0在路线图上,听起来像CDH 5.x可用。
最佳。