我在Guava中使用Bloom过滤器和漏斗类。我没有单独添加JAR,而是使用Maven添加了对Guava的依赖。
当我最初使用Bloom过滤器类时,它没有任何问题。但是当我开始使用Funnel类时(在具有相同依赖部分,类路径等的同一文件中)我得到了错误
java.lang.NoClassDefFoundError:com / google / common / hash / Funnels
和
抛出java.lang.ClassNotFoundException。
答案 0 :(得分:-1)
Guava是一个人们通常遇到问题的库,因为它经常会破坏向后兼容性。此外,许多项目都将其作为传递依赖项,因此您可能会陷入类路径中具有多个版本的番石榴的情况。请尝试以下方法:
mvn dependency:tree
命令以查看被吸入类路径的所有guava版本。如果您看到多个版本的guava,请从您的pom中依赖它的依赖项中排除guava。