我有几个包含完全相同的类的罐子。
例如,A.jar 和 B.jar 具有相同的类 Hello.class。如果我运行以下命令会发生什么:
java -classpath A.jar;B.jar com.testing.testcode
我的问题是它是否会运行?据我了解,类加载器将扫描类路径,并将返回它首先找到的任何 Hello.class。
我知道如果我使用 OSGi 加载特定的类,我可以避免这个问题。
但我的问题是——这是否会运行?或者 java -classpath A.jar;B.jar com.testing.testcode 会因为拥有同一个类的两个版本而崩溃。