http://d2100.com/questions/817
两个具有相同的名称在CLASSPATH中的类
如果我有两个名称相同的类说在我的类路径的两个不同的JAR将拾起JVM Matcher.java,反正是有,我可以建议JVM选择一个特定的呢?
4条回答
还有一种方法,为您指定的类应该选择从..您可以创建自己的类加载器加载类,根据您的要求。
你可以使用你的类加载2种方式
- Pass it as a parameter to jvm (
java -Djava.system.class.loader =com.somepackage.YourCustomClassLoader com.somepackage.YourMainClass
) - Use the class loader programatically to load a specific class (refer the links provided).
这里的类加载一些有用的链接
在classpath中找到的第一个。即,第一个JAR包含您的类将被使用。
你无法控制它从JVM内,但可以控制的classpath -确保你想要的是一个上市/在classpath中首先发现。
使用它时使用的类的完全限定路径。但是,如果你是指具有相同的名称类,也具有相同的封装 - 修复类路径。
回答#1
引述甲骨文 :
这个例子中提到:
所以,是的,它会加载一个,先指定的类路径中出现。