我正在从 GCS 读取文本/csv 文件,并希望生成一个 excel 文件并将其发布回 GCS。下面是我正在使用的 Spark 代码,它正在创建一个 excel 文件,但没有数据并且已损坏。管道引发以下错误。我在依赖项中包含了 xmlbeans-3.1.0.jar JAR 文件的路径,但看起来它没有从指定位置获取最新版本。
如何覆盖类路径以使用 CDAP/Data Fusion 中指定位置的 JAR 文件?
ERROR
Caused by: java.lang.NoSuchMethodError: org.apache.xmlbeans.XmlOptions.setEntityExpansionLimit(I)Lorg/apache/xmlbeans/XmlOptions;
at shadeio.poi.ooxml.POIXMLTypeLoader.<clinit>(POIXMLTypeLoader.java:43) ~[na:na]
我正在使用的火花代码是:
def sink(df: DataFrame, context: SparkExecutionPluginContext) : Unit = {
val fullpath = "gs://bucket_name/"
val targetfilename = "test.xlsx"
df.coalesce(1).write
.format("com.crealytics.spark.excel")
.option("Header", "true")
.mode("append")
.save(fullpath+targetfilename);
}
谢谢, NS