如何从特定的包/项目中导入不明确的类

时间:2016-06-25 16:22:47

标签: java maven import pom.xml ambiguity

我有一个奇怪的情况,在两个maven项目(A& B)中,在完全相同的包结构下定义了一个类“User.java”。 我的maven项目依赖于A& B. 但是项目中的“User.java”有一个额外的字段。 我想指定并确保我总是使用项目A中的'User.java'。但不幸的是,它总是从项目B中选择。

如何告诉编译器从特定/期望的项目中导入类?

1 个答案:

答案 0 :(得分:1)

我通常不回答“不要这样做”的问题,但在这种情况下我会例外。

这是 非常糟糕的想法 TM

正如已经指出的那样,你受 RUNTIME 类路径的支配,你几乎没有绝对的控制权,特别是如果一组不同的人负责配置和配置你的生产环境。

解决和解决此问题的时间是昨天。这应该从未被允许发生,并且继续这将导致将来持续的头痛和无法解释的,难以调试的失败。

让建筑师参与其中

  1. 重命名两个User类,例如AccountingUser& SalesUser。如果有合法的两种用户,请不要让其保持User;或
  2. 协调这两个定义,然后将其拉出到自己的库(以及任何常见的支持代码),并使两个项目都依赖于它。