首页 > 代码库 > 电信项目遇到的问题----->>><2> java.lang.NoSuchMethodError问题处理

电信项目遇到的问题----->>><2> java.lang.NoSuchMethodError问题处理

  这次遇到的问题仍然是jar包冲突遇到的问题,导致jar包里的类冲突以至于方法报错,java.lang.NoSuchMethodError.

解决办法也开始逐个排查jar包,反编译jar包里的内容和其他的jar包比对.这是眼都花了.如果有maven就没这么多事了,但是

又是个线上的项目,迁移到maven不能保证不会出什么幺蛾子,就只能将就这,就只能将就者逐渐的迁移.

  后来想java里有输出该类所在所在jar包路径的方法.

String className = request.getParameter("className");  
PrintWriter printWriter = new PrintWriter(response.getWriter());  
if(className == null || className.isEmpty()){  
    printWriter.write("className shoud be specified");  
}else{  
    Class<?> clazz = null;  
    try{  
        clazz = Class.forName(className);  
    }catch(Exception e){  
          
    }  
    if(clazz == null){  
        printWriter.println(className + "not found");  
    }else{  
        CodeSource codeSource = clazz.getProtectionDomain().getCodeSource();  
        if(codeSource == null){  
            printWriter.println(className + " location not available");  
        }else{  
            String location = codeSource.getLocation().getPath();  
            printWriter.println(className + " location: " + location);  
        }  
    }  
}  
printWriter.flush();  

这是核心的代码,本来打算写个action,看到网上有将其写到jsp里的更方便.

 

电信项目遇到的问题----->>><2> java.lang.NoSuchMethodError问题处理