读取文件中的Spark错误 - 线程“main”中的异常java.io.IOException:在作业中没有指定输入路径

时间:2017-04-11 20:45:23

标签: scala apache-spark apache-spark-sql spark-dataframe

我是Spark,Hadoop&斯卡拉。我有一种情况需要从Scala / Spark的本地目录/文件中读取,我遇到了问题。我看到其他人遇到了同样的问题,但我没有看到解决方案。

我正在使用Spark 1.6.2

我的代码如下:

def main(arg: Array[String]): Unit = {

val conf = new SparkConf().setAppName("MyAppName").setMaster("local[*]")
val sc = new SparkContext(conf)
val sqlContext = new SQLContext(sc)

val resultDf = sqlContext.read.json("/opt/app/poc/myfile.json")
}

我收到以下错误:Exception in thread "main" java.io.IOException: No input paths specified in job

注意:我的应用已在/opt/app/spark中安装并运行,我通过拨打/usr/bin/spark-submit --class com.mycom.TestMyApp /opt/app/spark/App.jar来呼叫它。我无法将json文件移动到项目jar文件中 - 必须从本地目录中读取它。

我无法弄清楚我哪里出错了。请帮忙。

这是stacktrace的一部分:

>Exception in thread "main" java.io.IOException: No input paths specified in job
>>        at org.apache.hadoop.mapred.FileInputFormat.listStatus(FileInputFormat.java:202)
>>        at org.apache.hadoop.mapred.FileInputFormat.getSplits(FileInputFormat.java:315)
>>        at org.apache.spark.rdd.HadoopRDD.getPartitions(HadoopRDD.scala:199)
>>        at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:242)
>>        at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:240)
>>        at scala.Option.getOrElse(Option.scala:120)
>>        at org.apache.spark.rdd.RDD.partitions(RDD.scala:240)
>>        at org.apache.spark.rdd.MapPartitionsRDD.getPartitions(MapPartitionsRDD.scala:35)
>> ...

0 个答案:

没有答案