Intellij IDEA--Maven创建Spark工程

本文介绍了如何在IntelliJ IDEA中创建一个Maven项目,并配置为Spark工程。首先创建一个Maven quickstart项目,设置组名和项目名。接着,添加Spark相关依赖,指定Maven目录,并在pom.xml中导入。然后,创建scala源代码目录并设置为Sources Root,同时创建resource目录作为Resource Root。最后,添加log4j配置文件并修改日志级别,以及编写Spark源代码前的系统配置步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、创建Maven项目

  1. 创建quickstart的maven的项目:
    在这里插入图片描述

  2. 编写组名和项目名:
    在这里插入图片描述

  3. 修改Maven的安装目录

在这里插入图片描述

点击完成
在这里插入图片描述

二、添加依赖

  1. 在pom.xml中添加依赖,选择import-change
    根据当前使用的jdk和spark版本选择修改版本号
<!--修改jdk版本号-->
<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
</properties>

<dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.12</version>
      <scope>test</scope>
   </dependency>
   <dependency>
      <groupId>org.scala-lang</groupId>
      <artifactId>scala-library</artifactId>
      <version>2.11.8</version>
    </dependency>
    <dependency>
      <groupId>org.apache.spark</groupId>
      <artifactId>spark-core_2.11</artifactId>
      <version>2.1.1</version>
    </dependency>

    <dependency>
      <groupId>org.apache.spark</groupId>
      <artifactId>spark-sql_2.11</artifactId>
      <version>2.1.1</version>
    </dependency>

    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.17</version>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>1.7.21</version>
    </dependency>
</dependencies>
  1. 在src-main文件夹中创建scala文件夹,右击修改文件夹类型为Sources Root
    在这里插入图片描述
    添加scala SDK完成后选择apply -->ok
    在这里插入图片描述

  2. 创建src同级目录resource,修改文件夹类型为Resource Root
    在这里插入图片描述

  3. 复制Maven:org.apach.spark:spark-core中的log4j-defaults.properties文件到resource文件夹中
    在这里插入图片描述
    在这里插入图片描述

  4. 修改拷贝的log4j文件,将INFO修改成ERROR,即报错时打印信息
    在这里插入图片描述

三、编写Spark源代码

import org.apache.spark.{SparkConf, SparkContext}

object wordCount {
  def main(args: Array[String]): Unit = {
    val conf = new SparkConf().setMaster("local[2]").setAppName("wordCount")
    val sc = SparkContext.getOrCreate(conf)

    val rdd1 = sc.parallelize(List("hello world","hello java","hello scala"))

    sc.makeRDD(List(1,2,3,4,5,6))

    rdd1.flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).collect.foreach(println)

    val partitions=rdd1.partitions
    println("rdd分区数:"+partitions.length)
    println("----------------------")
    //绝对路径
    println("绝对路径")
    val lines1 = sc.textFile("F:\\IdeaProjects\\kb09\\sparkDemo\\in\\word.txt")
    lines1.collect.foreach(println)
    
    //相对路径
    println("相对路径")
    val lines2 = sc.textFile("in/word.txt")
    lines2.collect.foreach(println)
    
    //文件上传hdfs,根据hdfs路径
    //需要在windows上添加虚拟机ip,具体方式如注释
    println("----------hdfs------------")
    val linesHDFS = sc.textFile("hdfs://hadoop001:9000/kb09space/*.txt")
    linesHDFS.collect.foreach(println)
  }
}

注:
windows添加虚拟机ip
C --> windows --> System32 -> drivers --> etc -->hosts
在这里插入图片描述
进入编辑,添加主机地址和主机名
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值