使用Ant基于单个文件及其依赖项编译项目

时间:2011-02-08 17:15:48

标签: ant compilation javac build.xml

目前,在构建我们的项目时,我们使用:

javac <various command line options> C:\project\CompilationHelper.java

CompilationHelper类然后引用我们的主文件,并通过一系列依赖项,我们需要的所有内容都被编译,仅此而已。然后是类目录。

我已经开始使用ant了,注意到只需构建我们的源目录,我们就可以获得比正常情况更大的.jar文件。

我意识到最好的解决方案是找到所有未使用的.java文件并删除它们但我们实际上有一个“主”项目和一个“子”项目,它使用了主要项目的许多组件,目前将它们分开是不可行的。

有没有办法告诉ant编译一个文件及其所有依赖项而不是目录?

非常感谢,

戴夫

1 个答案:

答案 0 :(得分:3)

您也可以在ant中使用CompilationHelper方法。只需将CompilationHelper.java提供给您的javac任务,而不是整个源目录。

以下是一个例子:

<javac srcdir="src"
       destdir="classes">
  <include name="CompilationHelper.java" />
</javac>

如果src下面的所有源文件(根据它们的包结构)和这个目录中的无包类CompilationHelper,它应该可以工作。