java - 在 Eclipse 中使用 Ant 添加运行时生成的文件夹作为源文件夹

标签 java eclipse ant classpath

我正在使用以下一堆软件:

  1. Ant 1.7.1
  2. eclipse 赫利俄斯
  3. Java 1.6
  4. Apache 节俭 0.8.0

我正在使用 Thrift 在 Ant 中使用以下代码块生成 java 源代码:

<exec executable="thrift-0.8.0.exe" osfamily="windows">
    <arg value="-out" />
    <arg value="java/src" />
    <arg value="--gen" />
    <arg value="java" />
    <arg file="Sample.thrift" />
</exec>

所以,现在我想使用 Antadd 生成的 src 文件夹自动添加到 Eclipse 项目的 classpath 以便当我在 Eclipse 中打开项目时它显示为源文件夹

注意:我知道项目的类路径存在于 .classpath 文件中,添加一个 classpathentry 可以解决我的问题问题。但我希望 Eclipse 这样做,而不是我在 .classpath 文件中手动进行。

此外,我还查看了 Ant-Eclipse project并找到一个 Ant 任务来创建一个新的 Eclipse Java 项目并将其 src 文件夹显示为源文件夹。但我不想依赖外部库。

<project name="test" default="eclipse" basedir=".">
    <target name="eclipse">
        <taskdef name="eclipse" classname="prantl.ant.eclipse.EclipseTask" />
        <eclipse>
            <project />
            <classpath>
                <source path="src" />
                <output path="bin" />
            </classpath>
        </eclipse>
    </target>
</project>

有没有办法在 Eclipse 中现有的 Ant 库中执行此操作?

非常感谢!

最佳答案

eclipse .classpath 文件是一个 XML 文档,因此在其中添加源文件夹涉及编辑 XML。不幸的是,Ant 没有任何内置的工具来以任何有意义的方式操作 XML。我用过 xmltask用于自己编辑 .classpath 和 .project 文件,但这是你说你并不真正想要的外部库。

然而,一切并没有丢失 - Ant supports running scripts , 包括 Groovy, which treats XML as a first-class citizen .我希望我可以说我在 Groovy 方面有足够的经验可以为您提供比一些链接更多的东西,但是您所追求的看起来非常可行,只需调用一些 appendNode()

关于java - 在 Eclipse 中使用 Ant 添加运行时生成的文件夹作为源文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14627639/

相关文章:

java - 在 jUnit 中使用时间

java - 来自服务器的 JSON 数组获取两个值

java - 我什么时候应该使用这种 int 变量?

java - 哈希轮计时器 #1 的守护线程是什么?

java - 自定义 git Push ant 任务在 JGit 中不起作用

java - 如何从 onitemclick 获取数据并将其显示在另一个 Activity (Android Dev)上?

java - SDK 管理器未启动

java - Eclipse 调试器悬停生成空框,没有变量值

java - 无法从代码执行 ANT

java - IntelliJ 对 Java 项目使用的默认构建过程是什么?