【踩坑】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对象

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