我正在尝试将Apache Zeppelin的一些代码用于个人项目。想法是传递Scala源代码以在Spark中执行。一切都很好,直到我尝试使用外部罐子。为此,我打电话给
SparkConf#setJars(externalJars);
我可以在日志中看到我的罐子被添加了:
Added JAR file:/Users/.../lsa.jar at spark://192.168.0.16:60376/jars/lsa.jar with timestamp 1470532825125
当我查看Spark http://192.168.0.16:4040/environment/
的UI时,我可以看到我的jar在 Classpath条目下添加了一个条目:
spark://192.168.0.16:60376/jars/lsa.jar
但是当我尝试从JAR导入一个类时,我得到了:
<console>:25: error: object cloudera is not a member of package com
import com.cloudera.datascience.lsa._
^
有没有人知道我错过了什么?
修改:我还尝试通过spark-defaults.conf
添加JAR:
spark.driver.extraClassPath /Users/.../lsa.jar
但没有运气。
我可以看到文档说here:
相反,请通过--driver-class-path命令行选项或默认属性文件中设置它。
我不知道在哪里通过这个选项,我应该只为主人或每个奴隶做什么?
提前致谢