- Documentation (2.0.0)
- Release Notes
- Tutorials
- Reference
- Developer doc
post resolve tasks
Several tasks in Ivy are considered as post resolve task and share a common behaviour and settings accordingly.
These tasks are:
- retrieve
- cachefileset
- cachepath
- artifactproperty (since 2.0)
- artifactreport (since 2.0)
- none has already been called in the current build with the attribute keep set to true (see below)
- organisation and module are not set
When you call resolve with an ivy file, the default for it is to keep the resolved data for use by the subsequent post resolve tasks. When you run an inline resolve, the default is not to keep the data. You can override this behaviour by setting the keep attribute as you like.
If you want to to reuse the resolved data obtained through a call to resolve in another build (i.e. not the current one), then you have to set the organisation and module attributes. This work only if the cache was not cleaned since your last resolve call. This does not work with inline calls, which must be performed in the same build.
The attributes listed are then mostly used only if a resolve is triggered automatically.
Attributes
Attribute | Description | Required |
---|---|---|
conf | a comma separated list of the configurations to retrieve or '*'. Since 2.0 you can also use '*(public)' or '*(private)'. Note that '*' is interpreted as '*(public)' when inline is true. |
No. Defaults to the configurations resolved by the last resolve call, or '*' if no resolve was explicitly called |
inline | true to use inline mode, false to resolve an ivy file (since 1.4) | No. defaults false |
organisation | the organisation of the module to retrieve. This usually doesn't need to be set since it defaults to the last resolved one, except for inline mode where it is required. | Yes in inline mode, otherwise no, it then defaults to last resolved module name |
module | the name of the module to retrieve. This usually doesn't need to be set since it defaults to the last resolved one, except for inline mode where it is required. | Yes in inline mode, otherwise no, it then defaults to last resolved module name |
revision | the revision constraint of the module to retrieve. Used only in inline mode. since 1.4 | No. Defaults to latest.integration |
transitive | true to resolve dependencies transitively, false otherwise since 1.4 | No. Defaults to true |
haltonfailure | true to halt the build on ivy failure, false to continue | No. Defaults to true |
validate | true to force ivy files validation against ivy.xsd, false to force no validation | No. Defaults to default ivy value (as configured in configuration file) |
file | the file to resolve if a resolve is necessary since 2.0 | No. Defaults to the previous resolved Ivy file or to ${ivy.dep.file} |
settingsRef | A reference to the ivy settings that must be used by this task (since 2.0) | No, 'ivy.instance' is taken by default. |
resolveId | The id which was used for a previous resolve, or the resolveId if a new resolve is performed (since 2.0) | No, defaults to '[org]-[module]'. |
log | the log setting to use during the resolve process. (since 2.0) Available options are:
| No, defaults to 'default'. |
Examples
<ivy:cachepath organisation="emma" module="emma" revision="2.0.4217" inline="true" conf="ant" pathid="emma.classpath"/>Resolves the emma module in version 2.0.4217, constructs an ant path with the corresponding artifacts, and then define the emma tasks using this path.
<taskdef resource="emma_ant.properties" classpathref="emma.classpath" />