美文网首页
spark的maven项目构建(基于idea 和maven)

spark的maven项目构建(基于idea 和maven)

作者: 猪猪侠来了 | 来源:发表于2019-05-22 16:41 被阅读0次

    环境预安装

    • idea安装
    • java安装
    • scala安装
    • idea安装scala插件

    1.新建一个maven项目

    开始创建项目体系结构
    File --> Project

    image
    选择org.scala-tools.archetypes:scala-archetype-simple image
    maven的设置
    image

    项目名称

    image

    pom.xml

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
        <modelVersion>4.0.0</modelVersion>
        <groupId>test.gzstrong</groupId>
        <artifactId>Maven_BigData</artifactId>
        <version>1.0-SNAPSHOT</version>
        <inceptionYear>2008</inceptionYear>
    
        <properties>
          <scala.version>2.11.0</scala.version>
          <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        </properties>
    
        <repositories>
          <repository>
            <id>scala-tools.org</id>
            <name>Scala-Tools Maven2 Repository</name>
            <url>http://scala-tools.org/repo-releases</url>
          </repository>
        </repositories>
    
        <pluginRepositories>
          <pluginRepository>
            <id>scala-tools.org</id>
            <name>Scala-Tools Maven2 Repository</name>
            <url>http://scala-tools.org/repo-releases</url>
          </pluginRepository>
        </pluginRepositories>
    
        <dependencies>
          <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-library</artifactId>
            <version>${scala.version}</version>
          </dependency>
          <dependency>
            <groupId>org.specs</groupId>
            <artifactId>specs</artifactId>
            <version>1.2.5</version>
            <scope>test</scope>
          </dependency>
    
          <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-core_2.11</artifactId>
            <version>2.3.0</version>
          </dependency>
        </dependencies>
    
    
        <build>
          <sourceDirectory>src/main/scala</sourceDirectory>
          <testSourceDirectory>src/test/scala</testSourceDirectory>
          <plugins>
            <plugin>
              <groupId>org.scala-tools</groupId>
              <artifactId>maven-scala-plugin</artifactId>
              <executions>
                <execution>
                  <goals>
                    <goal>compile</goal>
                    <goal>testCompile</goal>
                  </goals>
                </execution>
              </executions>
              <configuration>
                <scalaVersion>${scala.version}</scalaVersion>
                <args>
                  <arg>-target:jvm-1.5</arg>
                </args>
              </configuration>
            </plugin>
            <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-eclipse-plugin</artifactId>
              <configuration>
                <downloadSources>true</downloadSources>
                <buildcommands>
                  <buildcommand>ch.epfl.lamp.sdt.core.scalabuilder</buildcommand>
                </buildcommands>
                <additionalProjectnatures>
                  <projectnature>ch.epfl.lamp.sdt.core.scalanature</projectnature>
                </additionalProjectnatures>
                <classpathContainers>
                  <classpathContainer>org.eclipse.jdt.launching.JRE_CONTAINER</classpathContainer>
                  <classpathContainer>ch.epfl.lamp.sdt.launching.SCALA_CONTAINER</classpathContainer>
                </classpathContainers>
              </configuration>
            </plugin>
          </plugins>
        </build>
        <reporting>
          <plugins>
            <plugin>
              <groupId>org.scala-tools</groupId>
              <artifactId>maven-scala-plugin</artifactId>
              <configuration>
                <scalaVersion>${scala.version}</scalaVersion>
              </configuration>
            </plugin>
          </plugins>
        </reporting>
      </project>
    

    2.目录结构如下:

    image

    3.在src的main目录下新建java和scala文件夹

    4.同时修改java和scala文件夹为源码文件夹


    image

    5.在src的test目录下新建java和scala文件夹

    image

    6.同时修改java和scala文件夹为测试文件夹

    image

    然后设置scal为项目的sdk

    7.写个spark

    SparkApp.scala

    package test.gzstrong
    
    import org.apache.spark.{SparkConf, SparkContext}
    
    object SparkApp{
        def main(args: Array[String]): Unit = {
            val conf = new SparkConf().setAppName("test").setMaster("local[2]")
            val sc = new SparkContext(conf)
            val data = Array(1, 2,2,1,2, 3, 4, 5)
            val distData = sc.parallelize(data)
            val pairs = distData.map((_, 1))
            val counts = pairs.reduceByKey((a, b) => a + b)
            counts.collect().foreach(println)
            sc.stop()
        }
    }
    
    

    8.运行

    运行

    相关文章

      网友评论

          本文标题:spark的maven项目构建(基于idea 和maven)

          本文链接:https://www.haomeiwen.com/subject/nppuzqtx.html