Eclipse:在两个项目之间共享包以进行测试

Eclipse: sharing package between two projects for testing

问题是我使用 Mockito 通过一些受保护的方法来测试 class。为了模拟它们,我需要将我的测试放在同一个包中。 我现在使用以下方案:

项目

---源

------some.package.for.class

----------MyClass.java

---tests //源文件夹

------some.package.for.class //所以测试包看起来一样

----------Tests.java

它有效,但问题是我不太明白如何操作。据我了解,BuildPath 是 Eclipse IDE 的一部分,它帮助 Eclipse 为我的项目查找文件和库。 那么如何将测试保存在其他文件夹中但在同一个包中???

另一个问题:是否可以将 java 个文件保存在一个包中,但在不同的项目中?

源文件最好使用maven conventionsGradle 也遵守许多 Maven 约定)。

因此,我会使用:

  • src/main/java/some/package/for/class/MyClass.java
  • src/test/java/some/package/for/class/MyClassTest.java

是否可以将 class 个文件放在同一个包中,但放在不同的文件夹中?是的

是否可以将 class 个文件放在同一个包中,但放在不同的项目中?是的

加载 classes 时,它们可能来自许多不同的地方,包括不同的 JAR,但仍位于同一个包中。

关于 Eclipse,您只需确保在 Java Build Path > Source 中选择了所有源文件夹(包括测试)。没有限制说同一包中的所有 class 个文件必须在同一文件夹中。