Replicate Task
Description
The replicate task provides support for the construction of a directory structure suitable for usage as a repository source. The task resolves all dependent resources and copies artifacts from the local cache to a target root directory taking into account a target layout strategy.
Attributes
key | Optional declaration of a overriding resource key. The default behaviour is to resolve resources relative to the current resource. May not be used in conjunction with the ref attribute. |
ref | Optional declaration of a overriding resource reference. The default behaviour is to resolve resources relative to the current resource. May not be used in conjunction with the key attribute. |
todir | The target root directory. The default value is ${basedir}/target/replicate. |
layout | Set the repository layout strategy. The value may be one of the default layout strategies (classic, modern, or eclipse, or a custom layout layout strategy key declared in the Transit configuration. If undefined the layout will default to the same layout as used by the Transit cache (normally classic). |
verbose | Sets verbose logging on copy operations. |
self | If true the artifacts produced by the project will be included in the repication process (in which case it is recommended that the tasks be called following execution of the install target). |
Nested Elements
include | Include additional resources by key or ref. Multiple include statements my declared as children of the replicate element. |
Example
Classic Usage Example
The following example is taken from the DPML module build. The replicate task is used to construct the local system repository included within binary distributions.
<x:replicate self="true" verbose="false" toDir="${share.local}" layout="modern"/>
Example using nested includes
The following example demonstrates the usage of nested includes:
<x:replicate self="true" verbose="false" layout="modern" todir="${local}" > <include ref="dpml/depot/dpml-depot-builder"/> <include ref="dpml/depot/dpml-library-main"/> </x:replicate>