我正在尝试使用 Eclipse 的 JDT 生成 Java 单元测试。其中一部分是确定与特定 Java 类相关的类路径。
我将一个名为 jaffa-framework 的 Maven 项目导入 Eclipse。Jaffa-framework 有几个 Maven 模块,包括 jaffa-api。每个子模块都有自己的 pom.xml。我可以在 Eclipse 中使用 Maven 毫无问题地构建 jaffa-framework 及其子模块(尽管它不会使用 构建Project -> Build Project)。
<project ...
<artifactId>jaffa-framework</artifactId>
...
<profiles>
<profile>
<id>normal</id>
<modules>
<module>jaffa-api</module>
...
</modules>
</profile>
</profiles>
...
</project>
当我将 jaffa-framework 作为 Maven 项目导入 Eclipse 时,我在 UI 中看到以下内容:
- 一个 Java 项目:jaffa-framework
jaffa-api 的两个文件夹/IPackageFragmentRoots:jaffa-api/src/main/java 和 jaffa-api/src/test/java
一个“普通”文件夹:jaffa-api
这个结构在我看来很奇怪。我希望看到更多类似的东西:
jaffa-framework
jaffa-api
jaffa-api/src/main/java
jaffa-api/src/test/java
也许我在导入时做错了什么?如果您有想法,请告诉我。
如果我在 jaffa-api/src/main/java 中选择一个 Java 文件,我可以使用 JDT 导航到 jaffa-framework 项目并使用javaProject.getResolvedClasspath(true);获取其类路径。但是,我真正需要的是 jaffa-api 的类路径。
jaffa-api 文件夹包含一个 pom 文件、一个 .project 文件和一个 .classpath 文件。我没有看到使用 JDT 导航到它的简单方法,并且因为它是一个文件夹,所以我看不到如何使用 JDT 以编程方式获取类路径。
我也想知道为什么 jaffa-api 看起来像一个普通文件夹,而不是更像项目的东西。Eclipse 必须知道它是某种子项目,因为该文件夹包含 .classpath 和 .project 文件。
请告诉我如何使用 JDT 访问 jaffa-api 的类路径信息,和/或如何更正我的项目设置。


