Build

A project is built first time it is created, incrementally with each change (edit, refresh) or if requested explicitly.

Build is required to create a dictionary for each project. The dictionary is a type index used for autocomplete, code navigation (hiperlinks, layers etc.) etc. Without a dictionary, this functionality doesn't work.

Also, during the build process, syntax errors are detected and naming convention checks performed.

NOTE 1: A project is built by EDT only if it has the e Nature.

NOTE 2: Build phases presented below are called over all builders, both internal and external. If an external builder doesn't have a command for one of the phases (e.g. incremental) it is skipped.

Clean

From menu Project > Clean you may request to clean the project.
As a result, dictionary is emptied and markers removed (errors, warnings etc.).

NOTE: If menu Project > Build Automatically is checked, a full build starts automatically after a clean.

Full Build

From menu Project > Build Project you may request to build the project. Syntax errors are checked, naming conventions performed and type information collected (dictionary).

NOTE 1: The menu action is disabled if menu Project > Build Automatically is checked (default and recommendation).

NOTE 2: A full build is required from time to time due to incremental build limitations. You can do it either using a Clean which may trigger automatically a Full Build, or using the dedicated Rebuild action.

Rebuild

For ease of use, EDT provides a compact action named Rebuild which is equivalent with a Clean followed by a Full Build.

To trigger a rebuild click the Rebuild button Rebuild button in the toolbar.

NOTE 1: If menu Project > Build Automatically is checked and you trigger a Clean, you'll get the same effect as Rebuild.

NOTE 2: Build External is just a way to invoke rebuild only on external builders. Useful for calling builders which don't support incremental building and for which you need to rebuild from time to time, in which case it doesn't make sense to invoke (by rebuild) the internal builder which incrementally indexed changes anyway.

Incremental Build

If menu Project > Build Automatically is checked, every time you make a change (directly by editing or indirectly by refreshing) an incremental build process starts in the background. Unlike a full build, it analyzes only the changes, not the full project.

NOTE 1: An incremental build starts after 5 seconds when you stopped editing or moving in the editor. Customize from menu Window > Preferences > DVT > Build.

NOTE 2: An incremental build is performed on save.

NOTE 3: From time to time it is recommended to perform a full build.

NOTE 4: Build timeouts in 40 seconds. Customize from menu Window > Preferences > DVT > Build.

Recommendations

  1. It is recommended to keep menu Project > Build Automatically checked.
  2. It is recommended to Rebuild from time to time.

Related Reference

Top Files, Test Files, Active Test

Project Natures