当前位置: 首页 > 知识库问答 >
问题:

Java类在使用sbt进行火花提交Scala时未找到异常

柯星华
2023-03-14

这是我用scala编写的代码

package normalisation

import org.apache.spark.SparkContext
import org.apache.spark.SparkContext._
import org.apache.spark.SparkConf
import org.apache.spark.sql.SQLContext
import  org.apache.hadoop.fs.{FileSystem,Path}


object Seasonality {
 val amplitude_list_c1: Array[Nothing] = Array()
 val amplitude_list_c2: Array[Nothing] = Array()
 def main(args: Array[String]){
   val conf = new SparkConf().setAppName("Normalization")
   val sc = new SparkContext(conf)
   val sqlContext = new org.apache.spark.sql.SQLContext(sc)
   val line = "MP"
   val ps = "Test"
   val location = "hdfs://ipaddress/user/hdfs/{0}/ps/{1}/FS/2018-10-17".format(line,ps)
   val files = FileSystem.get(sc.hadoopConfiguration ).listStatus(new Path(location))
   for (each <- files) {
     var ps_data = sqlContext.read.json(each)

   }
   println(ps_data.show())
 }

使用sbt包编译时收到的错误是hereimage

这是我的build.sbt档案

名称:=“OV”

规模厌恶:=“2.11.8”

// https://mvnrepository.com/artifact/org.apache.spark/spark-corelibraryDependencies=“org.apache.spark”%%“spark核心”%%“2.3.1”

// https://mvnrepository.com/artifact/org.apache.spark/spark-sqllibraryDependencies=“org.apache.spark”%%“spark sql”%%“2.3.1”

共有1个答案

洪安顺
2023-03-14

在Spark版本中

那么你也应该能做到

val spark:SparkSession = ???
val location = "hdfs://ipaddress/user/hdfs/{0}/ps/{1}/FS/2018-10-17".format(line,ps)
spark.read.json(location)

读取目录中的所有json文件。

另外,我认为您还会得到另一个编译错误

for (each <- files) {
  var ps_data = sqlContext.read.json(each)
}
println(ps_data.show())

对于超出范围的ps\U数据

如果出于某种原因需要使用SparkContext,它应该确实位于spark core中。您是否尝试重新启动IDE、清理缓存等?

编辑:我只是注意到build.sbt可能不在你调用sbt包的目录中,所以sbt不会捡起来

 类似资料:
  • 嗨,我正在尝试生成Salt示例的输出,但没有使用文档中提到的docker。我找到了帮助生成输出的scala代码,这是main.scala。我将main.scala修改为一个方便的main.scala, 我为这个scala创建了一个单独的文件夹, calac-cp“lib/salt.jar:lib/spark.jar”main.scala 这已成功运行并在文件夹BinexTest下生成类。 现在,项

  • 我正在使用这个快速入门教程,尝试使用spark submit命令运行这个简单的spark应用程序。http://spark.apache.org/docs/1.2.0/quick-start.html#self-包含的应用程序。当我尝试使用spark-1.4.0-bin-hadoop2.6\bin运行它时 有人知道如何解决这个问题吗?非常感谢任何帮助。

  • 一些脚本在工作时什么也不做,当我手动运行它们时,其中一个失败了,出现了以下消息: 错误SparkUI:未能绑定SparkUI java.net.bindexception:地址已在使用:服务“SparkUI”在重试16次后失败! 所以我想知道是否有一种特定的方法来并行运行脚本?

  • 我可以从IDE(远程)编程运行这个程序吗?我使用Scala-IDE。我寻找一些代码来遵循,但仍然没有找到合适的 我的环境:-Cloudera 5.8.2[OS redhat 7.2,kerberos 5,Spark2.1,scala 2.11]-Windows 7

  • 我刚从Spark开始。我已经用Spark安装了CDH5。然而,当我尝试使用sparkcontext时,它给出了如下错误 我对此进行了研究,发现了错误:未找到:值sc 并试图启动火花上下文。/Spark-shell。它给错误

  • 我目前正在使用上面的UDF将一列字符串解析成一个键和值的数组。“50:63.25,100:58.38”到[[50,63.2],[100,58.38]]。在某些情况下,字符串是“\N”,我无法解析列值。如果字符串是“\N”,那么我应该返回一个空数组。有人能帮我处理这个异常或帮我添加一个新的案例吗?我是spark-scala的新手。 错误:scala.MatchError:[Ljava.lang.St