背景
项目用 java 编写, ant 构建 , ivy 负责jar 包的依赖管理 ,在intelij 里边运行单元测试
java.lang.VerifyError: class com.fasterxml.jackson.databind.deser.SettableBeanProperty$Delegating overrides final method getDeclaringClass.()Ljava/lang/Class;
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at java.la

本文探讨了一个在JAVA项目中升级clickhousejdbc后出现的VerifyError问题。问题源于IDEA运行JUnit测试时,由于IDEA工具类与工程JAR版本不一致导致的依赖冲突。解决方案涉及依赖管理,特别是针对不同版本的jackson库。虽然命令行运行测试没有问题,但在IDEA中执行时,由于未处理依赖冲突,导致了错误的发生。该问题提醒开发者在IDE中执行和CI/CD环境中的依赖管理应保持一致。
最低0.47元/天 解锁文章
6161

被折叠的 条评论
为什么被折叠?



