首页 > 代码库 > 同一个项目中存在完全相同的包名和类名如何解决调用问题

同一个项目中存在完全相同的包名和类名如何解决调用问题

项目中遇到有一个类,在两个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类的一个方法

同一个项目中存在完全相同的包名和类名如何解决调用问题