scala - 使用 udf 在 scala 中抛出 classNotFoundException
问题描述
我正在使用具有简单功能的 UDF:
val upper: String => String = _.toUpperCase
import org.apache.spark.sql.functions.udf
val upperUDF = udf(upper)
dataset.withColumn("upper", upperUDF(col('text')).show
但得到以下异常:
java.lang.ClassNotFoundException: $line20.$read$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw $$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$ iw$$iw$$iw$$anonfun$4 at java.lang.ClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at java.lang.ClassLoader.loadClass( ClassLoader.java:357) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:348) at org.apache.spark.serializer.JavaDeserializationStream$$anon$1.resolveClass( JavaSerializer.scala:67) 在 java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1859) 在 java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1745) 在 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2033) ) 在 java.io.ObjectInputStream。readObject0(ObjectInputStream.java:1567) 在 java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2278) 在 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2202) 在 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java :2060) 在
解决方案
推荐阅读
- javascript - 如何在父组件重新加载时阻止子组件重新渲染
- node.js - 无法读取未定义猫鼬的属性“长度”
- environment-variables - JWT(jsonwebtoken) 标志不适用于环境变量
- python - 如何限制我的学生不访问 django 中的教师区域?
- r - R Highcharter 热图 x 轴类别
- python - 如何修复“TypeError:int() 参数必须是字符串、类似字节的对象或数字,而不是 'NoneType'”
- laravel - 存储具有对外关系的新实体
- c - 请解释这段 C 代码的输出
- android - 如何强制 SQLite 数据库从磁盘重新加载
- python - 如何用正则表达式同时搜索两个可能的引号?