idea maven窗口_IDEA上运行Flink任务

欢迎访问我的GitHub

https://github.com/zq2599/blog_demos

内容:所有原创文章分类汇总及配套源码,涉及Java、Docker、Kubernetes、DevOPS等;

IDEA是常用的IDE,我们编写的flink任务代码如果能直接在IDEA运行,会给学习和开发带来很大便利,例如改完代码立即运行不用部署、断点、单步调试等;

环境信息

  1. 电脑:2019版13寸MacBook Pro,2.3 GHz 四核Intel Core i5,8 GB 2133 MHz LPDDR3
  2. 操作系统:macOS Catalina 10.15.3
  3. JDK:1.8.0_211
  4. Maven:3.6.0
  5. IDEA:2018.3.5 (Ultimate Edition)
  6. Flink版本:1.9.2

    关于正版IDEA

    如何免费使用正版IDEA,可以参考《免费申请和使用IntelliJ IDEA商业版License指南》

    开发

  7. 首先确保您电脑上maven已装好;
  8. 创建一个flink任务的maven工程,找个干净目录执行以下命令: ```shell mvn
    archetype:generate

-DarchetypeGroupId=org.apache.flink
-DarchetypeArtifactId=flink-quickstart-java
-DarchetypeVersion=1.9.2

```

  1. 按提示输入groupId、artifactId、version、package等内容:

f8bf667fc1194e4e43f71519b6b3a9f4.png 4. 现在maven工程已生成,用IDEA导入这个工程,如下图:

cd74f8c9d717d3dc6ef3772683bff52b.png 5. 以maven的类型导入:

f3f5252cabc422890d03e0d0d3008dcf.png 6. 导入成功后的样子:

03ad0513aec8b9cd907d544e559c6683.png 7. 修改StreamingJob.java,加入功能是监听本地18081端口,得到的字符串做word count操作,完整代码在此下载:
https:// raw.githubusercontent.com /zq2599/blog_demos/master/files/StreamingJob.java

a503acf63f19f6b329cab603594db0f1.png 8. 现在的代码已经能运行,但flink网页却还不能访问,会显示以下错误信息,需要继续做些设置:

298e767516fdbb7628fbbf60ad44a0c2.png 9. 下载flink-1.9.2安装包,这里面有flink网页服务用到的一个jar,地址是:
https:// www-eu.apache.org/dist/ flink/flink-1.9.2/flink-1.9.2-bin-scala_2.11.tgz 10. flink-1.9.2-bin-scala_2.11.tgz下载后解压,在lib目录下有个flink-dist_2.11-1.9.2.jar文件,记住此文件的位置,稍后会用到; 11. 回到IDEA,在项目上点击右键,点击菜单Open Module Settings:

c147b54d1df905ecd9c81bc48a4fd952.png 12. 在弹出的窗口做如下操作,目的是给项目中增加jar:

c695006c4585a66b593c8f22f00bf27f.png 13. 弹出选择文件的窗口,请选择刚才准备好的文件flink-dist_2.11-1.9.2.jar:

544555fb4bdcb2f085fa3f6a001c6057.png 14. 设置工作已经完成,由于StreamingJob的工作是读取本机18081端口的数据,所以我们要把18081端口的服务启动起来,不然StreamingJob运行时是连不上端口的,打开一个控制台,执行命令:nc -l 18081 15. 现在可以将StreamingJob运行起来,如下图,右键点击StreamingJob,选择Run 'StreamingJob.main()':即可启动flink任务,如果想打断点调试,请选择Debug 'StreamingJob.main()'

847b90856fc736f2d0c945c695e7ba86.png 16. 回到刚才执行nc命令的控制台,输入一些字符串,例如"aaa bbb aaa",然后回车; 17. 再回到IDEA,可见StreamingJob已经从18081端口读到了数据并且输出了统计结果:

80f7b98cf062809681c7f0444d2f380c.png 18. 在IDEA的控制台搜索关键字localhost,如下图红框,可以查到flink网页的端口,我这里是62641:

bde1d4630c545930f0af7f7ebdb7b383.png 19. 浏览器访问
http:// localhost:62641 ,如下图,可见flink网页已经正常显示,正在运行的任务也能看到:

b1006c4c776efbeb9d822b5f2e419dba.png

至此,最简单的IDEA运行flink任务的实战就完成了,如果您也在学习flink,希望本文能给您一些参考;

欢迎关注公众号:程序员欣宸

微信搜索「程序员欣宸」,我是欣宸,期待与您一同畅游Java世界... https://github.com/zq2599/blog_demos

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值