import java.io.File
import org.apache.spark._
object WordCount {
if (file.isDirectory && file.exists())
{
deleteAllFilesOfDir(file)
}
val sc = new SparkContext("local", "WordCount",
System.getenv("SPARK_HOME"),
Seq(System.getenv("SPARK_TEST_JAR")))
val textRDD = sc.textFile(args(0))
val result = textRDD.flatMap(_.split(" ")).map((_, 1)).reduceByKey(_+_)
result.saveAsTextFile(args(1))
}
def deleteAllFilesOfDir(path: File) {
if (!path.exists())
return;
if (path.isFile()) {
path.delete();
return;
}
val files: Array[File] = path.listFiles();
files.foreach(f => deleteAllFilesOfDir(f))
path.delete();
}
import org.apache.spark._
object WordCount {
def main(args: Array[String]) {
val file= new File(args(1))if (file.isDirectory && file.exists())
{
deleteAllFilesOfDir(file)
}
val sc = new SparkContext("local", "WordCount",
System.getenv("SPARK_HOME"),
Seq(System.getenv("SPARK_TEST_JAR")))
val textRDD = sc.textFile(args(0))
val result = textRDD.flatMap(_.split(" ")).map((_, 1)).reduceByKey(_+_)
result.saveAsTextFile(args(1))
}
def deleteAllFilesOfDir(path: File) {
if (!path.exists())
return;
if (path.isFile()) {
path.delete();
return;
}
val files: Array[File] = path.listFiles();
files.foreach(f => deleteAllFilesOfDir(f))
path.delete();
}
}
spark-submit --jars SparkPi/target/scala-2.11/sparkpi_2.11-1.0.jar --class WordCount "abc" "data.txt" "wr"
实际运行过程中,args[0]为“data.txt”,args[1]为“wr”,那么问题来了,“abc”是什麽参数?
上面操作有误,--jars是指依赖的第三方jar包,而本例中应该直接使用:如下命令
spark-submit --class WordCount SparkPi/target/scala-2.11/sparkpi_2.11-1.0.jar "data.txt" "wr"
注意:--class WordCount 必须在前面。
OVER