A plugin can be skipped by setting a property plugin.pluginname.skip to true (for example: ‑Dplugin.broadcast.skip=true). This property is also set internally, after each plugin is build, to prevent rebuilds of the same plugin (which can occur in parent/child plugin setups).
The Ant build script can be improved in a number of ways:
the
overwrite
property should not be defined twice (with different values)the parent-plugin recursion does not need a separate macro
do not rebuild a plugin when it was already build in the same Ant invocation
add an option to skip a plugin from being built