我的项目在类路径中包含两个 jar(xyz-jre7.jar 和 xyz-jre8.jar),其中包含具有相同名称的类。在运行时,我的程序似乎使用 JRE 7 和 8 选择了正确的 jar 和类。在内部,Java 如何知道要使用哪个类?这些检查是在哪些文件中进行的?
问问题
129 次
1 回答
1
默认的ClassLoader以不确定的顺序从 jar 文件中加载类。如果有两个或更多类具有相同的完全限定名称,则加载的第一个获胜。
应用服务器通常有自定义的 ClassLoader
于 2018-06-08T22:06:54.623 回答