1

来自 Eclipse 的屏幕截图

我正在用 Java 开发一个相当大的 Android 软件(使用 Eclipse 和 ADT)。

为了支持我的开发,我制作了一个自己的命令行工具,它执行以下操作:

  1. 加载和处理某些 Java 文件(来自我开发的软件的项目)
  2. 将新的 Java 文件输出到某个文件夹(因此也保留输入文件)到我的项目中

命令行工具的作用无关紧要,它的输出仅仅是标准的Java 代码(即它是一个代码生成器)。

我希望在构建过程中自动调用这个命令行工具。换句话说,我希望当我完成手动编码并开始构建过程(例如通过单击“运行...”)时,会发生以下情况:

  1. 命令行工具运行
  2. 由命令行工具生成的文件也包含在构建中(即,它们的编译与在 Eclipse 项目中手动添加和编码时完全一样)。

我很确定我必须将此程序作为“程序”添加到项目的 Builder 列表中(参见随附的屏幕截图)。我的问题:

  1. 放在什么位置?应该是第一个吗?
  2. 为了满足上述要求,我还需要做什么?恐怕如果命令行工具只是将 .java 文件写入文件夹,Eclipse将看不到新生成的文件(因为它们没有添加到其项目文件中)。
4

1 回答 1

1

您走在正确的轨道上,并且在以下条件下可以正常工作:

  • 您的构建器必须位于顶部,因此它可以在 Java 构建器运行之前修改源文件。
  • Your Java files must be generated into one of the existing "src" pathes of the project. Java files are not registered in the project, so if you put someting into a source folder of the project, it will be compiled. Eclipse tools like xtext and xtend work the same way.
  • The refresh option of your builder must be activated. Otherwise the workspace would not know that you created files (as your program works with java.io.File operations, thereby bypassing the workspace API for resources).
于 2012-09-23T06:21:35.197 回答