java.lang.NoSuchMethodError的一种可能
新老版本并存,而老版本的jar包路径还在classpath中,并且在 新版本的前面,程序调用新方法,编译没问题,但运行时会先去找旧的classes,而旧的classes中不含此方法,故报 NoSuchMethodError错误,而且这个还不是异常,捕获不了,不好找原因。
另外新旧版本并存,老版本在前,运行时调用的方法名相同,但内容变了,这时就不是报Error了,而是可能报各种稀奇古怪的异常。
使用poi-3.0.2时,如果旧的poi还在classpath,则以上两种情况都可能发生。
新老版本并存,而老版本的jar包路径还在classpath中,并且在 新版本的前面,程序调用新方法,编译没问题,但运行时会先去找旧的classes,而旧的classes中不含此方法,故报 NoSuchMethodError错误,而且这个还不是异常,捕获不了,不好找原因。
另外新旧版本并存,老版本在前,运行时调用的方法名相同,但内容变了,这时就不是报Error了,而是可能报各种稀奇古怪的异常。
使用poi-3.0.2时,如果旧的poi还在classpath,则以上两种情况都可能发生。