首页 > 代码库 > jar包冲突时表现

jar包冲突时表现

假设一个jar有两个版本,高版本里有低版本没有的方法,那么在调用方法是如何调用的呢

编译

在MyEclipse编译的时候,实际上是看classpath里面的顺序,如果高版本的顺序在低版本的前面,那么调用高版本的方法是可以编译通过的,

执行

但是在tomcat里执行的时候就是按照jar的文件名顺序加载,(即使是MyEclipse挂载Tomcat的情况下),这个时候如果低版本在高版本的前面那么就悲剧了,在执行到高版本的方法的时候会抛出NoSuchMethodError,

jar包冲突时表现