现在的位置: 首页 > 综合 > 正文

NoSuchMethodError异常处理之特殊处理方式

2014年09月05日 ⁄ 综合 ⁄ 共 475字 ⁄ 字号 评论关闭

若出现NoSuchMethodError异常,大家第一时间就会想到没这个方法或jar包问题:如下示例

java.lang.NoSuchMethodError: org.apache.commons.codec.binary.Base64.encodeBase64String() in Java EE application
我以为是我多个版本的缘故,后来我把低版本的全部删除了,仅留下commons-codec之1.5.jar,可是后来发现还是一直不行,始终还是报上面的NoSuchMethodError异常。

纠结了会儿想到了个办法,是不是其它jar包里面完全重写了Base64这个类导致的呢?可以用以下方式打印下Base64这个类来自具体的哪个jar包:

BinaryCodec.class.getProtectionDomain().getCodeSource().getLocation()
       后来惊奇的发现果然是其它三方jar包(QQ登录的Sdk4J.jar)里面全重写Base64的commons-codec库,接下来的工作大家都知道了哈,就不废话了微笑



抱歉!评论已关闭.