项目中遇到有一个类,在两个jar包中都存在,而且类所在的包名和类名完全一致,解决办法有两种:
1.常用办法
清除项目中过时的那个jar包,推荐方式。
2.如果两个都不能清除,则在使用过程中动态指定加载的jar包即可。以rt.jar中javax.xml.ws.Service为例,代码如下
File file = new File("f:\\rt.jar");
URL url = file.toURI().toURL();
ClassLoader classLoader = new URLClassLoader(new URL[]{url});
Class<?> clazz = classLoader.loadClass("javax.xml.ws.Service");
Service service = (Service)clazz.newInstance();
service.getPorts(); //Service类的一个方法
时间: 2024-10-18 11:59:40