Skip to content

2.16.1 rule-db模式 NoClassDefFoundError: jodd/util/SystemUtil #98

Description

@xiangshaonumber1

SpringBoot Version: 3.3.13
liteflow Version 2.16.1

基于rule-db模式中的redis模式,集成如下依赖

com.yomahub
liteflow-rule-db-redis

liteflow-rule-db-redis 中的 redisson 版本为3.21.0
启动时会加载工具 jodd/util/SystemUtil,异常如下
Exception in thread "main" java.lang.IllegalStateException: java.lang.NoClassDefFoundError: jodd/util/SystemUtil
at org.springframework.boot.SpringApplication.handleRunFailure(SpringApplication.java:825)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:345)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1363)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1352)
at com.yy.cloud.ActivityApplication.main(ActivityApplication.java:10)
Caused by: java.lang.NoClassDefFoundError: jodd/util/SystemUtil
at com.yy.cloud.config.YyIp2RegionAutoConfiguration.initIp2Region(YyIp2RegionAutoConfiguration.java:52)
at com.yy.cloud.config.YyIp2RegionAutoConfiguration.run(YyIp2RegionAutoConfiguration.java:30)
at org.springframework.boot.SpringApplication.lambda$callRunner$4(SpringApplication.java:786)
at org.springframework.util.function.ThrowingConsumer$1.acceptWithException(ThrowingConsumer.java:82)
at org.springframework.util.function.ThrowingConsumer.accept(ThrowingConsumer.java:60)
at org.springframework.util.function.ThrowingConsumer$1.accept(ThrowingConsumer.java:86)
at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:798)
at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:786)
at org.springframework.boot.SpringApplication.lambda$callRunners$3(SpringApplication.java:774)
at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
at java.base/java.util.stream.SortedOps$SizedRefSortingSink.end(SortedOps.java:357)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:510)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:774)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:342)
... 3 more
Caused by: java.lang.ClassNotFoundException: jodd.util.SystemUtil
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526)
... 22 more

但是实际依赖中的版本,路径为 jodd/system/SystemUtil (jodd 5.1.6)
解决方法:
我的项目基于SrpingBoot3, 默认集成了redisson的(jodd 6.x.x), 直接去掉liteflow-rule-db-redis中的redisson依赖

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions