您好,登錄后才能下訂單哦!
如何在IDEA上運行Flink任務?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
IDEA是常用的IDE,我們編寫的flink任務代碼如果能直接在IDEA運行,會給學習和開發帶來很大便利,例如改完代碼立即運行不用部署、斷點、單步調試等;
環境信息
關于正版IDEA
如何免費使用正版IDEA,可以參考《免費申請和使用IntelliJ IDEA商業版License指南》
開發
mvn \ archetype:generate \ -DarchetypeGroupId=org.apache.flink \ -DarchetypeArtifactId=flink-quickstart-java \ -DarchetypeVersion=1.9.2
按提示輸入groupId、artifactId、version、package等內容:
4. 現在maven工程已生成,用IDEA導入這個工程,如下圖:
5. 以maven的類型導入:
6. 導入成功后的樣子:
7. 修改StreamingJob.java,加入功能是監聽本地18081端口,得到的字符串做word count操作,完整代碼在此下載:https://raw.githubusercontent.com/zq2599/blog_demos/master/files/StreamingJob.java
8. 現在的代碼已經能運行,但flink網頁卻還不能訪問,會顯示以下錯誤信息,需要繼續做些設置:
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:
12. 在彈出的窗口做如下操作,目的是給項目中增加jar:
13. 彈出選擇文件的窗口,請選擇剛才準備好的文件flink-dist_2.11-1.9.2.jar:
14. 設置工作已經完成,由于StreamingJob的工作是讀取本機18081端口的數據,所以我們要把18081端口的服務啟動起來,不然StreamingJob運行時是連不上端口的,打開一個控制臺,執行命令:nc -l 18081
15. 現在可以將StreamingJob運行起來,如下圖,右鍵點擊StreamingJob,選擇Run 'StreamingJob.main()':即可啟動flink任務,如果想打斷點調試,請選擇Debug 'StreamingJob.main()'
16. 回到剛才執行nc命令的控制臺,輸入一些字符串,例如"aaa bbb aaa",然后回車;
17. 再回到IDEA,可見StreamingJob已經從18081端口讀到了數據并且輸出了統計結果:
18. 在IDEA的控制臺搜索關鍵字localhost,如下圖紅框,可以查到flink網頁的端口,我這里是62641:
19. 瀏覽器訪問http://localhost:62641,如下圖,可見flink網頁已經正常顯示,正在運行的任務也能看到:
看完上述內容,你們掌握如何在IDEA上運行Flink任務的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。