Flink开发环境搭建(maven)

本文详细介绍了Scala开发环境的搭建过程,包括Scala SDK的下载与配置,IntelliJ IDEA中Scala插件的安装,Maven的下载与使用。此外,还提供了基于Apache Flink的Scala词频统计示例代码,以及执行过程中可能遇到的错误及其解决方案。
摘要由CSDN通过智能技术生成

1、下载scala sdk

http://www.scala-lang.org/download/ 直接到这里下载sdk,(https://downloads.lightbend.com/scala/2.12.8/scala-2.12.8.msi)

 

2、下载scala for intellij idea的插件

File->setting->plugins里搜索Scala,然后安装即可

 

3、https://maven.apache.org/download.cgi

http://mirrors.shu.edu.cn/apache/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.zip

 

4、生成工程

mvn archetype:generate -DarchetypeGroupId=org.apache.flink -DarchetypeArtifactId=flink-quickstart-scala

或者

mvn archetype:generate -DarchetypeGroupId=org.apache.flink -DarchetypeArtifactId=flink-quickstart-java -DarchetypeCatalog=https://repository.apache.org/content/repositories/snapshots/ -DarchetypeVersion=1.7-SNAPSHOT

 

5、scala统计词频示例

package com.test.s

import org.apache.flink.api.scala._

object WordCount {

  def main(args: Array[String]) {

    val env = ExecutionEnvironment.getExecutionEnvironment

    // get input data
    val text = env.readTextFile("D:\\git\\test\\pom.xml")

    val counts = text.flatMap { _.toLowerCase.split("\\W+") filter { _.nonEmpty } }
      .map { (_, 1) }
      .groupBy(0)
      .sum(1)

    // counts.writeAsCsv("D:\\git\\test\\output.txt", "\n", " ")
    counts.print()
    env.execute("Socket Window WordCount")

  }
}

 

  • 直接按照样例执行,可能出现以下错误:
Exception in thread "main" java.lang.RuntimeException: No new data sinks have been defined since the last execution. The last execution refers to the latest call to 'execute()', 'count()', 'collect()', or 'print()'.
  • 参照此文,原因是print()方法自动会调用execute()方法,造成错误,所以注释掉env.execute()即可

转载于:https://www.cnblogs.com/linn/p/10454921.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值