【问题标题】:Integrating Jasmin into Ant and Eclipse将 Jasmin 集成到 Ant 和 Eclipse 中
【发布时间】:2012-06-23 00:31:07
【问题描述】:

我正在开发一个 Java 项目,为此我需要一个非常具体的测试代码,我在 Jasmin(JVM 程序集)中创建了该代码。该项目是用Ant构建的,有一个很好的目录结构,即:

root
  /src
    /classes
    /tests
  /build
    /classes
    /tests

定制的 Jasmin 源文件与 JUnit Java 文件一起位于 src/tests 目录中。所有这些都是用 Ant 构建的(我使用简单的“java”Ant 任务在源文件上运行 Jasmin 编译器),它们被放入 /build 文件夹内的相应目录中,然后 Ant 运行 JUnit 任务。所有这一切都很好......

在我介绍了由 Jasmin 生成的单个类之前,Eclipse 与该项目完美配合。问题是 Eclipse 看不到新的 .class 文件。构建路径包含 src/classes 和 src/tests 作为源文件夹,以及 /build 作为输出文件夹。然而它似乎找不到 Jasmin 生成的类,所以有数百个“ClassX unresolved”问题,确实让开发非常痛苦。

有人知道如何强制 Eclipse 看到这个类吗?

【问题讨论】:

    标签: java eclipse ant jasmin


    【解决方案1】:

    一个简单的解决方案是将 Jasmin 类编译到一个单独的类文件夹中,然后将该文件夹添加到 Eclipse 的构建路径中:Project Properties / Java Build Path / Libraries / Add Class Folder...

    【讨论】:

    • 嗯,这正是我所做的。 Ant 将 Jasmin 源文件构建到 /build/tests 中,并且 /build 已经在 Eclipse 的构建路径中,所以当我按下“添加类文件夹”时,它甚至不允许我选择 /build 的任何子目录。
    • 您不能在 Eclips 构建路径中使用另一个构建文件夹的子文件夹。就像我说的,使用一个单独的文件夹。
    • 伙计,我可能不明白你的意思。我将 Jasmin 文件移动到 src/assembly 并更改了 Ant 配置以将相应的类文件放入 build/assembly,并相应地更改了测试的类路径。然后我添加了一个新的源文件夹来构建 Eclipse 的路径:<classpathentry kind="src" output="build/assembly" path="src/assembly"/>。还是什么都没有……
    • 哦,你的意思是把它完全放在 /build 之外!但这只是丑陋...没有办法吗?当然 Eclipse 必须比这更聪明。
    • 您应该按照我发布的说明进行操作,而不是手动编辑 .classpath 文件。但是,如果您想这样做,请使用 (将 {project name} 替换为您的实际项目)。有了这个,在运行 Ant 构建之后刷新 Eclipse 项目就足够了。
    猜你喜欢
    • 2012-01-02
    • 2011-09-04
    • 1970-01-01
    • 2011-12-19
    • 2011-12-09
    • 1970-01-01
    • 1970-01-01
    • 2013-12-21
    • 1970-01-01
    相关资源
    最近更新 更多