flink 1.8
Project Template for Scala Scala项目模板
Build Tools构建工具
Flink项目可以使用不同的构建工具来构建。为了快速入门,Flink为以下构建工具提供了项目模板:
这些模板帮助您设置项目结构并创建初始构建文件。
SBT
Create Project
您可以通过以下两种方法构建一个新项目:
Use the sbt template
$ sbt new tillrohrmann/flink-project.g8
Run the quickstart script
$ bash <(curl https://flink.apache.org/q/sbt-quickstart.sh)
这将在指定的项目目录中创建一个Flink项目。
Build Project
为了构建您的项目,您只需执行sbt clean assembly命令。这将在target/scala_your-major-scala version/目录中创建fat-jar your-project-name-assembly-0.1- snap .jar。
Run Project
为了运行您的项目,您必须执行sbt run命令。
默认情况下,将在相同JVM中运行您的作业job sbt。为了在不同的JVM中运行作业job,请将以下代码添加到build.sbt中。
fork in run := true
IntelliJ
我们建议您使用IntelliJ进行Flink job开发。在开始之前,您必须将新创建的项目导入IntelliJ。您可以通过File -> New -> Project from Existing Sources...然后选择项目目录。IntelliJ将自动检测build.sbt文件并设置所有内容。
为了运行Flink作业,建议选择mainRunner模块作为运行/调试配置的类路径。这将确保所有被设置为provided 的依赖项在执行时都是可用的。您可以配置Run/Debug配置通过Run -> Edit Configurations...,然后从Dropbox模块的Use类路径中选择mainRunner。
addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "4.0.0")
在sbt中,使用以下命令创建Eclipse项目文件
> eclipse
现在,您可以通过项目将项目导入Eclipse File -> Import... -> Existing Projects into Workspace,然后选择项目目录。
Maven
Requirements
唯一的要求是使用Maven 3.0.4(或更高版本)和安装Java 8.x。
Create Project
使用以下命令之一来创建一个项目:
Use Maven archetypes
$ mvn archetype:generate \
-DarchetypeGroupId=org.apache.flink \
-DarchetypeArtifactId=flink-quickstart-scala \
-DarchetypeVersion=1.8.0
Run the quickstart script
$ curl https://flink.apache.org/q/quickstart-scala.sh | bash -s 1.8.0
Inspect Project
工作目录中将有一个新目录。如果您使用了curl方法,则会调用该目录quickstart。否则,它的名称为artifactId:
$ tree quickstart/
quickstart/
├── pom.xml
└── src
└── main
├── resources
│ └── log4j.properties
└── scala
└── org
└── myorg
└── quickstart
├── BatchJob.scala
└── StreamingJob.scala
示例项目是一个Maven项目,它包含两个类:StreamingJob和BatchJob是DataStream和DataSet程序的基本框架程序。main 方法是程序的入口点,用于在IDE中测试/执行和适当的部署。
我们建议您将此项目导入IDE。
IntelliJ IDEA支持Maven开箱即用,并为Scala开发提供了一个插件。根据我们的经验,IntelliJ为开发Flink应用程序提供了最好的体验。
对于Eclipse,您需要以下插件,您可以从提供的Eclipse更新站点安装这些插件:
- Eclipse 4.x
- Eclipse 3.8
Build Project
如果要构建/打包项目,请转到项目目录并运行“mvn clean package”命令。您将找到一个包含您的应用程序的JAR文件,以及您可能作为依赖项添加到应用程序中的连接器connectors 和代码库libraries :target/<artifact-id>-<version>.jar.
注意:如果您使用与StreamingJob不同的类作为应用程序的主类/入口点,我们推荐您到pom.xml文件中更改mainClass设置。这样,Flink就可以从JAR文件直接运行应用程序了,而无需另外指定主类。
Next Steps
写您的应用程序!
如果您正在编写流应用程序,并且正在寻找编写内容的灵感,请参阅流处理应用程序教程Stream Processing Application Tutorial。
如果您正在编写批处理应用程序,并且正在寻找编写内容的灵感,请查看批处理应用程序示例Batch Application Examples。
有关这些API的完整概述,请参阅DataStream API和DataSet API部分。
在这里Here,您可以了解如何在本地集群的IDE外部运行应用程序。
如果您有任何问题,请到我们的邮件列表 Mailing List上查询。我们很乐意为你提供帮助。
https://flink.sojb.cn/dev/projectsetup/scala_api_quickstart.html