在 IntelliJ 上运行的异常 Spark sql 代码,即 java.lang.IllegalArgumentException:[重复]

Posted

技术标签:

【中文标题】在 IntelliJ 上运行的异常 Spark sql 代码,即 java.lang.IllegalArgumentException:[重复]【英文标题】:Exception Spark sql code running on IntelliJ i.e java.lang.IllegalArgumentException: [duplicate] 【发布时间】:2018-11-27 16:04:05 【问题描述】:
val spark = SparkSession.builder.appName("Simple Application")
      .config("spark.sql.warehouse.dir",
              "hdfs://quickstart.cloudera:8020/user/hive/warehouse")
      .enableHiveSupport()
      .config("hive.metastore.uris","thrift://127.0.0.1:9083")
      .master("local") //local
      .getOrCreate()

在 IntelliJ 中运行 Spark SQL 代码时,得到: Exception in thread "main" java.lang.IllegalArgumentException: Unable to instantiate SparkSession with Hive support because Hive classes are not found.

【问题讨论】:

您在问问题吗?如果您正在尝试解决此错误,到目前为止您尝试了什么? 【参考方案1】:

这是因为您可能错过了导入(替换为您正在使用的 spark 版本):

<dependency>
        <groupId>org.apache.spark</groupId>
        <artifactId>spark-hive_2.11</artifactId>
        <version>2.4.0</version>
</dependency>

如果使用 sbt,则如下:

libraryDependencies += "org.apache.spark" %% "spark-hive" % "2.4.0" % "provided"

希望这会有所帮助!

【讨论】:

以上是关于在 IntelliJ 上运行的异常 Spark sql 代码,即 java.lang.IllegalArgumentException:[重复]的主要内容,如果未能解决你的问题,请参考以下文章

在 IntelliJ 上添加对远程 spark 的依赖

线程“主”java.lang.NoClassDefFoundError 中的异常:IntelliJ 中的 org/apache/spark/ml/feature/VectorAssembler

使用 spark sql 在 intelliJ 上出现不相关的模棱两可的方法调用错误

无法使用 sbt 在本地运行 spark 作业,但可以在 IntelliJ 中运行

如何在IntelliJ IDEA中运行Java/Scala/Spark程序

AWS EMR - IntelliJ 远程调试 Spark 应用程序