Build Types

A "Build Type" identifies at a high level how you want a single module in your project to be built. Building a module typically includes many steps like compilation, source generation, unit testing, packaging, and build reporting. For example, the build type build-webapp-java compiles, tests, and packages a Java WAR file.

A BuildType is typically implemented as an Ant script, an Ivy descriptor, and a properties file. The Ivy descriptor is used by EasyAnt to load the Build Type as runtime. The Ant Script is executed whenever you build a module using that Build Type. Most Build Type scripts simply import a set of EasyAnt Plugins, each plugin contributing one step to the build process.

For example, the build-std-java Build Type imports the compile-java plugin to compile Java sources and the package-jar plugin to bundle the results as a JAR file.

A Build Type's properties file then contains default parameter settings used by the plugins; for example, the expected location of Java source and test files in a project directory.

Module name Description
build-std-java a standard build for simple java modules, relying on standard lifecycle, and providing compilation, packaging and unit tests
build-webapp-java a standard build for webapp java modules, relying on standard lifecycle, and providing compilation, packaging and unit tests
build-std-scala a standard build for simple scala modules, relying on standard lifecycle, and providing compilation, packaging and unit tests
build-std-groovy a standard build for simple groovy modules, relying on standard lifecycle, and providing compilation, packaging and unit tests
build-std-ant-plugin a standard build for easyant plugin written in ant (xml), relying on standard lifecycle, packaging and unit tests