构建器通常根据其它资源的存在和状态来创建或修改工作空间资源。它们对于强制执行某个域约束来说是一种功能强大的机制。例如,Java 构建器将 Java 源文件(.java 文件)转换为可执行类文件(.class 文件),Web 链接构建器更新指向其名称/位置已经更改的文件的链接等等。随着资源的创建和修改,将会运行构建器并维护约束。这种转换不必是一对一的。例如,单个 .java 文件可以生成几个 .class 文件。
关于构建,有两种不同的用户工作方式:自动构建或用户启动的手工构建。
构建发生时不需要仔细控制整个过程的用户只要选择打开自动构建即可。在打开自动构建的情况下,构建发生在每组资源更改(例如,保存文件和导入 ZIP 等等)之后。因为完成的工作量与所作的更改成正比,所以自动构建很有效率。自动构建的好处是派生的资源(例如,Java .class 文件)总是最新的。自动构建是通过常规 > 工作空间首选项页面上的自动构建选项来打开/关闭的。
构建发生时需要更多控制权的用户可以关闭自动构建并手工调用构建。有时,在某些情况下(例如,您知道除非完成了一大组更改,否则构建毫无价值)是需要手工构建的。在这种情况下,进行自动构建毫无益处。可以用许多方法手工调用构建,例如,通过从项目的上下文菜单中选择构建项目。
手工构建的缺点在于:在您进行构建之前,生成用来指示构建错误的问题很快就变得过时。另外,要记住,在涉及构建输出之前(例如,在运行 Java 程序之前)应先进行手工构建,这一点很重要。
构建是根据上次构建状态以递增方式工作的。它们将把已配置的构建器的变换仅应用于自从计算上次状态以来(即自从上次构建以来)更改了的资源。为了提高效率,自动构建始终使用递增构建。
清洁构建(项目 > 清洁)将废弃任何现有的构建状态。清洁后的下一次构建将根据已配置的构建器的域规则变换所有资源。
根据用户需要的不同,可以对特定的一组项目或者将工作空间作为一个整体来执行构建和清洁。特定的文件和文件夹不能被单独地构建。