java.lang.NoSuchMethodError
运行时错误,再编译期一般不会出现这个问题。NoSuchMethodError中文意思是没有找到方法,遇到这个错误并不是说依赖的jar包、方法不存在而找不到,这就类似于 ClassNotFoundException错误了,出现ClassNotFoundException错误也不一定是缺少依赖的jar、class,有可能是依赖的冲突,即引用了多次报错Class的jar。(注意,报错的某个类的方法找不到,有可能是其父类的版本冲突)
如何在目录下的所有jar包里找到共同拥有某个class文件的命令如下:
tvf $name|grep AAA; done
find . -name "*.jar"|while read name; do echo file:$name;jar -