首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >运行scala入门示例时出错

运行scala入门示例时出错
EN

Stack Overflow用户
提问于 2017-07-24 22:48:18
回答 1查看 162关注 0票数 0

我正在尝试运行在scala-xml上提供的简单示例,但是代码不会运行:

代码语言:javascript
复制
import org.apache.spark.sql.SQLContext

val sqlContext = new SQLContext(sc)
val df = sqlContext.read
    .format("com.databricks.spark.xml")
    .option("rowTag", "book")
    .load("books.xml")

(从自述文件复制粘贴;books.xml确实在本地目录中)

这给我带来了错误:

名称:编译错误 消息:1:错误:非法开始定义 .format("com.databricks.spark.xml") ^ StackTrace:

我在一个带有Spark/Scala内核的木星笔记本上运行这个程序。

我相信有一个简单的错误,但我是全新的Scala/火花。

版本信息:

  • 火花: 2.0.1
  • Scala: 2.11.8
EN

回答 1

Stack Overflow用户

发布于 2017-07-25 08:12:44

您可以使用- packages命令行选项将包添加到火花中。

根据注释和问题,您应该尝试在一行中运行代码,这将解决您的“错误:非法开始定义”的问题。

代码语言:javascript
复制
val df = spark.read.format("com.databricks.spark.xml").option("rowTag", "book").load("book.xml")

下一步是“未能找到数据源: com.databricks.spark.xml”。

尝试添加库依赖/包"com.databricks:spark-xml_2.11:0.4.1 "

代码语言:javascript
复制
spark-shell --packages com.databricks:spark-xml_2.11:0.4.1

val df = spark.read.format("com.databricks.spark.xml").option("rowTag", "book").load("book.xml")



df.show
+-----+--------------------+--------------------+---------------+-----+------------+--------------------+
|  _id|              author|         description|          genre|price|publish_date|               title|
+-----+--------------------+--------------------+---------------+-----+------------+--------------------+
|bk101|Gambardella, Matthew|An in-depth look ...|       Computer|44.95|  2000-10-01|XML Developer's G...|
|bk102|          Ralls, Kim|A former architec...|        Fantasy| 5.95|  2000-12-16|       Midnight Rain|
|bk103|         Corets, Eva|After the collaps...|        Fantasy| 5.95|  2000-11-17|     Maeve Ascendant|
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45291259

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档