springboot2.x 整合 Elastic-Job 踩坑

2021-02-19 10:37:48 浏览数 (1)

java.lang.ClassNotFoundException: org.apache.curator.connection. StandardConnectionHandlingPolicy

springboot2.x 整合 Elastic-Job 时会抛出一下异常

代码语言:javascript复制
Caused by: java.lang.ClassNotFoundException: org.apache.curator.connection.StandardConnectionHandlingPolicy
	at java.net.URLClassLoader.findClass(URLClassLoader.java:381) ~[na:1.8.0_172]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_172]
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) ~[na:1.8.0_172]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_172]
	... 40 common frames omitted

原因: Elastic-Job项目基于开源产品QuartzZookeeper及其客户端Curator进行二次开发,如果与新版的Spring Boot一起使用,会出现Curator的版本冲突。

解决办法:在pom.xml中引入低版本的Curator依赖即可

代码语言:javascript复制
<dependency>
    <groupId>org.apache.curator</groupId>
    <artifactId>curator-recipes</artifactId>
    <version>2.10.0</version>
</dependency>
<dependency>
    <groupId>org.apache.curator</groupId>
    <artifactId>curator-framework</artifactId>
    <version>2.10.0</version>
</dependency>

0 人点赞