springCloud2.x版本集成elasticJob curator不兼容问题demo
背景
最近公司需要我集成elasticjob到现有项目,编写demo过程都很顺利,但是集成到项目时发现了一些问题,于是写文章记录了一下.
重要的事情说三遍:
只支持zookeeper是3.5.x以上版本!!!
只支持zookeeper是3.5.x以上版本!!!
只支持zookeeper是3.5.x以上版本!!!
其他版本的zookeeper不用往下看了.
elasticJob集成步骤
下面是我集成clasticJob的步骤:
- 官网了解elasticJob如何集成;
- 下载官网demo,新建springboot项目走起;
- 因为公司想做成通用的,所以自定义写了注解;
- 集成进项目(结果发现问题);
- 在demo的springBoot项目上解决版本冲突问题;
- 写成starter集成进项目;
冲突原因(curator-framework/curator-client/curator-recipes)
由于springCloud注册中心用的zookeeper,所以discover的pom文件引用curator-xxx 4.1.0版本,但需要集成的elasticJob也用zk作为注册中心,同样引用了curatorjar包,不过是2.10.0版本,集成之后启动会报jar包冲突错误,用4.0.1版本elastic会出现错误,用2.10.0版本springCloud会报错误(不向下兼容很难受)