Java 包冲突问题
Issue with conflicting Java packages
我在使用 Java 的这个包概念时遇到了一些困难。假设我有以下两个目录结构。
dir1
|___com
|___example
|___mypackage
|___myclass.class
dir2
|___com
|___example
|___mypackage
|___myclass.class
所以 myclass.class
文件都是 com.example.mypackage
的一部分。现在如果 dir1
和 dir2
都在 CLASSPATH
上并且我写 import com.exaple.mypackage.myclass
,将考虑哪个路径?
所以,class加载程序负责加载classes。因此,首先 JVM 查找了自定义 classes,然后它进入 jar 文件来检查 classes。
在您的情况下,看起来两者都是自定义 classes 因此要解决此问题,您必须指定要加载的文件,然后您可以添加 dir1 / dir2 以指定确切的 class。
JVM 选择您在层次结构中输入的最新 classes。
我在使用 Java 的这个包概念时遇到了一些困难。假设我有以下两个目录结构。
dir1
|___com
|___example
|___mypackage
|___myclass.class
dir2
|___com
|___example
|___mypackage
|___myclass.class
所以 myclass.class
文件都是 com.example.mypackage
的一部分。现在如果 dir1
和 dir2
都在 CLASSPATH
上并且我写 import com.exaple.mypackage.myclass
,将考虑哪个路径?
所以,class加载程序负责加载classes。因此,首先 JVM 查找了自定义 classes,然后它进入 jar 文件来检查 classes。 在您的情况下,看起来两者都是自定义 classes 因此要解决此问题,您必须指定要加载的文件,然后您可以添加 dir1 / dir2 以指定确切的 class。 JVM 选择您在层次结构中输入的最新 classes。