导入并配置Flink样例工程
操作场景
Flink针对多个场景提供样例工程,包含Java样例工程和Scala样例工程等,帮助客户快速学习Flink工程。
针对Java和Scala不同语言的工程,其导入方式相同。
以下操作步骤以导入Java样例代码为例。操作流程如图1所示。
操作步骤
- 参考获取MRS应用开发样例工程,获取样例代码解压目录中“src\flink-examples”目录下的样例工程文件夹“flink-examples-security”。
    
    
 
     - 在安全模式下,获取“src\flink-examples”下的样例工程flink-examples-security。
 - 在普通模式下,获取“src\flink-examples”下的样例工程flink-examples-normal。
 
 - 在导入样例工程之前,IntelliJ IDEA需要进行配置JDK。
    
    
- 打开IntelliJ IDEA,单击“Configure”下拉按钮。
      图2 Choosing Configure
       - 在“Configure”下拉菜单中单击“Project Defaults”。
      图3 Choosing Project Defaults
       - 在“Project Defaults”菜单中选择“Project Structure”。
      图4 Project Defaults
       - 在打开的“Project Structure”页面中,选择“SDKs”,单击绿色加号添加JDK。
      图5 添加JDK
       - 在弹出的“Select Home Directory for JDK”窗口,选择对应的JDK目录,然后单击“OK”。
      图6 选择JDK目录
       - 完成JDK选择后,单击“OK”完成配置。
      图7 完成JDK配置
       
 - 打开IntelliJ IDEA,单击“Configure”下拉按钮。
      
 - (可选)如果导入Scala语言开发样例工程,还需要在IntelliJ IDEA中安装Scala插件。
    
    
- 在“Configure”下拉菜单中,单击“Plugins”。
      图8 Plugins
       - 在“Plugins”页面,选择“Install plugin from disk”。
      图9 Install plugin from disk
       - 在“Choose Plugin File”页面,选择对应版本的Scala插件包,单击“OK”。
      图10 choose plugin File
       - 在“Plugins”页面,单击“Apply”安装Scala插件。
 - 在弹出的“Platform and Plugin Updates”页面,单击“Restart”,使配置生效。
      图11 Platform and Plugin Updates
       
 - 在“Configure”下拉菜单中,单击“Plugins”。
      
 - 将Java样例工程导入到IDEA中。
    
    
- 打开IntelliJ IDEA。在“Quick Start”页面选择“Import Project”。
      
或者,针对已使用过的IDEA工具,您可以从IDEA主界面直接添加。选择导入工程。
图12 Import Project(Quick Start页面)
       - 选择需导入的样例工程路径,然后单击“OK”。
      图13 Select File or Directory to Import
       - 选择从已存在的源码创建工程,然后单击“Next”。
      图14 Create project from existing sources
       - 确认导入路径和工程名称,单击“Next”。
      图15 Import Project
       - 确认导入工程的root目录,默认即可,单击“Next”。
      图16 Import Project
       - 确认IDEA自动识别的依赖库以及建议的模块结构,默认即可,单击“Next”。
 - 确认工程所用JDK,然后单击“Next”。
 - 导入结束,单击“Finish”,IDEA主页显示导入的样例工程。
      图17 导入结束
      图18 已导入工程
       
 - 打开IntelliJ IDEA。在“Quick Start”页面选择“Import Project”。
      
 - 导入样例工程依赖的Jar包。
    
    如果通过开源镜像站方式获取的样例工程代码,在配置好Maven后, 相关依赖jar包将自动下载,不需手动添加。
 
      当样例代码使用其他FusionInsight组件时,例如Kafka等,请去对应FusionInsight组件的服务端安装目录查找并添加依赖包。样例工程对应的依赖包详情,请参见样例工程运行依赖包参考信息。
 - (可选)如果导入Scala语言开发的样例程序,还需要为工程设置语言。
    
    
- 在IDEA主页,选择进入“Project Structure”页面。
 - 选择“Modules”,选中工程名称,然后右键选择。
      图19 选择Scala语言
       - 当IDEA可以识别出Scala SDK时,在设置界面,选择编译的依赖jar包,然后单击“OK”应用设置
      图20 Add Scala Support
       - 当系统无法识别出Scala SDK时,需要自行创建。
      
- 单击“Create...”。
        图21 Create...
         - 在“Select JAR's for the new Scala SDK”页面单击“Browse...”。
        图22 Select JAR's for the new Scala SDK
         - 在“Scala SDK files”页面选择scala sdk目录,单击“OK”。
        图23 Scala SDK files
         
 - 单击“Create...”。
        
 - 设置成功,单击“OK”保存设置。
      图24 设置成功
       
 - 设置IDEA的文本文件编码格式,解决乱码显示问题。
    
    
- 在IDEA首页,选择。
      图25 选择Settings
       - 编码配置。
      
- 在“Settings”页面,展开“Editor”,选择“File Encodings”。
 - 分别在右侧的“IDE Encoding”和“Project Encoding”的下拉框中,选择“UTF-8”。
 - 单击“Apply”应用配置。
 - 单击“OK”完成编码配置。
 
图26 Settings
       
 - 在IDEA首页,选择。
      
 
样例工程运行依赖包参考信息
Flink客户端lib目录、opt目录中都有flink jar包,其中lib目录中默认是flink核心jar包,opt目录中是对接外部组件的jar包(例如flink-connector-kafka*.jar),若应用开发中需要请手动复制相关jar包到lib目录中。
针对Flink提供的几个样例工程,其对应的运行依赖包如下:
| 
        样例工程  | 
      
        依赖包  | 
      
        依赖包获取地址  | 
     
|---|---|---|
       
  | 
      
        flink-dist_*.jar  | 
      
        可在Flink的客户端或者服务端安装路径的lib目录下获取。  | 
     
       
  | 
      
       
  | 
      
        可在Flink的客户端或者服务端安装路径的lib目录下获取。  | 
     
| 
        向Kafka生产并消费数据程序  | 
      
       
  | 
      
       
  | 
     
| 
        pipeline程序  | 
      
       
  | 
      
       
  | 
     
| 
        Stream SQL Join程序  | 
      
       
  | 
      
       
 
  | 
     
| 
        Flink读写HBase程序  | 
      
       
  | 
      
       
  | 
     
| 
        Flink读写Hudi程序  | 
      
        hbase-unsafe-*.jar  | 
      
        可在二次开发样例代码编译后产生的lib文件夹下获取。  | 
     
    
      