当前位置:   article > 正文

idea快速创建flink项目_idea新建flink项目

idea新建flink项目

本文将介绍如何使用idea快速创建flink项目。

1.flink官网查看flink版本

https://flink.apache.org/zh/downloads.html
在这里插入图片描述

2.idea创建一个新的项目,选择Maven项目,并选择"Create from archetype",由于没有Flink的archetype,所以需要自己添加。这里version选择从flink官网查看到的flink版本。

groupId:org.apache.flink
artifactId:flink-quickstart-java
version:1.12.4或者1.13.1
  • 1
  • 2
  • 3

在这里插入图片描述

点击OK后在archetype列表中查看Flink的archetype是否添加成功,添加成功的话如下图所示:
在这里插入图片描述

若没找到,可去C:\Users\[你的用户名]\AppData\Local\JetBrains\IntelliJIdea2021.2\Maven\Indices目录下新建UserArchetypes.xml文件,文件内容如下:

<archetypes>
    <archetype groupId="org.apache.flink" artifactId="flink-quickstart-java" version="1.13.1" />
</archetypes>
  • 1
  • 2
  • 3

然后重启idea即可。

3.选择对应的archetype

在这里插入图片描述
在这里插入图片描述

指定项目的Maven配置,也可使用默认的配置。然后点击Finish
在这里插入图片描述

等待片刻,Maven会自动构建项目
在这里插入图片描述

接下来运行一个简单的wordCounts例子。
打开BatchJob类,编辑代码如下:

import org.apache.flink.api.common.functions.FlatMapFunction;
import org.apache.flink.api.java.DataSet;
import org.apache.flink.api.java.ExecutionEnvironment;
import org.apache.flink.api.java.tuple.Tuple2;
import org.apache.flink.util.Collector;


public class BatchJob {

   public static void main(String[] args) throws Exception {
      // set up the batch execution environment
      final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();

      //通过字符串构建数据集
      DataSet<String> text = env.fromElements(
            "风急天高猿啸哀,渚清沙白鸟飞回。" +
                  "无边落木萧萧下,不尽长江滚滚来。" +
                  "万里悲秋常作客,百年多病独登台。" +
                  "艰难苦恨繁霜鬓,潦倒新停浊酒杯。");
      // 分割字符串、按照key进行分组、统计相同的key个数
      DataSet<Tuple2<String, Integer>> wordCounts = text
            .flatMap(new LineSplitter())
            .groupBy(0)
            .sum(1);
      // 打印
      wordCounts.print();
   }

   // 分割字符串的方法
   public static class LineSplitter implements FlatMapFunction<String, Tuple2<String, Integer>> {
      @Override
      public void flatMap(String line, Collector<Tuple2<String, Integer>> out) {
         for (String word : line.split("")) {
            out.collect(new Tuple2<String, Integer>(word, 1));
         }
      }
   }

}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39

接着注释掉pom文件下图中的<scope>provided</scope,然后Load Maven Changes
<scope>provided</scope>表示被依赖项目参与当前项目的编译和测试阶段,但不会参与运行阶段,如果不注释掉,本地运行会报ClassNotFoundException异常
在这里插入图片描述

运行BatchJob:
在这里插入图片描述
至此,一个flink项目搭建完成。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/597948
推荐阅读
相关标签
  

闽ICP备14008679号