添加 JAR 以在 spark 中使用 sql UDF

Adding JARs to use sql UDF in spark

我想使用在我的库中定义的自定义 UDF。我为此使用了以下代码:

%spark2
import org.apache.spark.sql.functions.year

val sqlContext = new org.apache.spark.sql.hive.HiveContext(sc)

sqlContext.sql(s"ADD JAR /usr/hdp/current/spark-client/lib/myLib.jar")

val df = sqlContext.sql("select parse_datetime(start_timestamp, 'CET', 'yyyyMMddHHmmssSSS') AS TIMESTAMP) from temp) 

上面的代码抱怨缺少函数“parse_datetime”,所以显然,ADD JAR 语句没有添加 myLib。是否存在语法问题或我遗漏了什么。我在 Zeppelin 运行 这个

我也复制了 $SPARK_HOME/lib 文件夹中的 myLib.jar 但没有用。

我找到了解决办法。我已经在 spark intertreper 的依赖项部分给出了 myLib.jar 的确切路径。现在可以了。