【踩坑】Flink無法使用Jedis連接redis服務器

現象:在本地環境Flink流處理的task 用main函數可以運行 但是打包成jar包部署到Flink上就運行失敗

 

過程:

項目使用Flink-scala寫的 scala沒有相關連接redis的包 但是Jedis只支持Java版本 所以寫了個JedisUtil類 用scala調用方法來創建jedis session 工具類中都使用靜態方法與變量編寫

部署上去發現不行

後來將JedisUtil改成非靜態的成員變量和方法後再部署就可以運行了

 

原因: scala似乎不支持java類的靜態方法與靜態成員變量的調用 所以需要將Java的Util類 均採用非static的寫法 創建一個新的Util對象

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章