java - 收到此错误 "cannot access scala.reflect.api.TypeTags"

标签 java scala maven apache-spark

我正在从 Spark 1.6 迁移到 Spark 2.1。在 Maven 构建期间,我在下面提到的方法中的一个 Java 类中遇到了这个错误。

"cannot access scala.reflect.api.TypeTags - class file for scala.reflect.api.TypeTags not found"

这是我的代码

private Dataset<Row> getEmptyDataFrame(String columnName) {
    StructType structType = new StructType().add(columnName, DataTypes.StringType);
    return spark.createDataFrame(sc.emptyRDD(), structType);
  }

其中“spark”和“sc”分别是 SparkSession 和 JavaSparkContext 对象。

我正在使用 scala-reflect 2.11.8 jar

需要知道此错误的根本原因。

最佳答案

修复它。 scala-reflect jar 的范围被指定为“运行时”。因此,它无法在 Maven 构建/编译期间获取它。

关于java - 收到此错误 "cannot access scala.reflect.api.TypeTags",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55652587/

相关文章:

java - Primefaces 日历 - 未显示正确的日期

scala - 使用 LiftScreen 字段或文本

java - 实现归并排序

scala - 使用withColumn将两列添加到现有DataFrame

java - 使用 Scala/Java API 基于外部数组的内容进行自定义排序

java - Apache Spark maven tomcat :run

java - Neo4j 没有安装查询引擎

java - Stock Maven Surefire "Java 7"修复了在 Mac 上无法工作的问题,解决方法,尝试了解

java - IntelliJ IDEA 13.0.3 和 Tomcat 8.0.9。不能让它工作

java - 如何在RCP eclipse环境中将装饰器应用到标签提供者?