http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/resolver/url.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/resolver/url.adoc b/asciidoc/resolver/url.adoc index ff40f63..f8b7faf 100644 --- a/asciidoc/resolver/url.adoc +++ b/asciidoc/resolver/url.adoc @@ -22,12 +22,12 @@ [] |======= |Tag|url -|Handle latest|yes with http urls (and apache server) and with file urls, no with other urls -|Handle publish|yes with http urls whose destination supports publishing (as of Ivy 2.0) +|Handle latest|yes with HTTP URLs (and Apache server) and with file URLs, no with other URLs +|Handle publish|yes with HTTP URLs whose destination supports publishing (as of Ivy 2.0) |======= -This resolver is one of the most generic. In fact, most of the previous resolvers can be obtained by a particular configuration of this one. Indeed it uses urls to find ivy files and artifacts. The urls it uses are defined through ivy and artifact children, each giving a pattern to find ivy files or artifacts. +This resolver is one of the most generic. In fact, most of the previous resolvers can be obtained by a particular configuration of this one. Indeed it uses URLs to find Ivy files and artifacts. The URLs it uses are defined through Ivy and artifact children, each giving a pattern to find Ivy files or artifacts. *Limitation*: in `m2compatible` mode, this resolver is not able list available organizations. It means some features like link:../use/repreport.html[repreport] are not available. @@ -49,7 +49,7 @@ This resolver shares the link:../settings/resolvers.html#common[common attribute [options="header"] |======= |Element|Description|Cardinality -|ivy|defines a pattern for ivy files, using the pattern attribute|0..n +|ivy|defines a pattern for Ivy files, using the pattern attribute|0..n |artifact|defines a pattern for artifacts, using the pattern attribute|1..n |======= @@ -69,4 +69,4 @@ This resolver shares the link:../settings/resolvers.html#common[common attribute ---- -Looks for ivy files in one place and for artifacts in two places: with or without revision in name (revision being already in the directory structure). +Looks for Ivy files in one place and for artifacts in two places: with or without revision in name (revision being already in the directory structure).
http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/resolver/vfs.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/resolver/vfs.adoc b/asciidoc/resolver/vfs.adoc index ba55e3b..0a77893 100644 --- a/asciidoc/resolver/vfs.adoc +++ b/asciidoc/resolver/vfs.adoc @@ -22,11 +22,11 @@ [] |======= |Tag|vfs -|Handle latest|depend on vfs capacity, usually yes -|Handle publish|depend on vfs capacity, usually yes +|Handle latest|depend on VFS capacity, usually yes +|Handle publish|depend on VFS capacity, usually yes |======= -This resolver is certainly the most capable, since it relies on link:http://jakarta.apache.org/commons/vfs/[Apache commons VFS], which gives an uniform access to link:http://jakarta.apache.org/commons/vfs/filesystems.html[a good number of file systems], including ftp, webdav, zip, ... *__since 1.4__* +This resolver is certainly the most capable, since it relies on link:http://jakarta.apache.org/commons/vfs/[Apache Commons VFS], which gives an uniform access to link:http://jakarta.apache.org/commons/vfs/filesystems.html[a good number of file systems], including FTP, WebDAV, zip, ... *__since 1.4__* == Attributes @@ -39,7 +39,7 @@ This resolver shares the link:../settings/resolvers.html#common[common attribute [options="header"] |======= |Element|Description|Cardinality -|ivy|defines a pattern for ivy files, using the pattern attribute|0..n +|ivy|defines a pattern for Ivy files, using the pattern attribute|0..n |artifact|defines a pattern for artifacts, using the pattern attribute|1..n |======= @@ -58,4 +58,4 @@ This resolver shares the link:../settings/resolvers.html#common[common attribute ---- -Access ivy and artifacts files using sftp. +Access Ivy and artifact files using SFTP. http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/samples/build.xml ---------------------------------------------------------------------- diff --git a/asciidoc/samples/build.xml b/asciidoc/samples/build.xml index eeb823c..f69dce6 100644 --- a/asciidoc/samples/build.xml +++ b/asciidoc/samples/build.xml @@ -19,14 +19,14 @@ <project name="go-ivy" default="go" xmlns:ivy="antlib:org.apache.ivy.ant"> <!-- this build file is a self contained project: it doesn't require anything else - that ant 1.6.2 or greater and java 1.4 or greater properly installed. + that Ant 1.8 or greater and Java 1.5 or greater properly installed. It is used to showcase how easy and straightforward it can be to use Ivy. This is not an example of the best practice to use in a project, especially - for the java source code "generation" :-) (see generate-src target) + for the Java source code "generation" :-) (see generate-src target) - To run copy this file in an empty directory, open a shell or a command window + To run copy this file in an empty directory, open a shell (or command line) window in this directory and run "ant". It will download ivy and then use it to resolve the dependency of the class which is itself "contained" in this build script. @@ -36,62 +36,62 @@ More information can be found at http://ant.apache.org/ivy/ --> - <!-- here is the version of ivy we will use. change this property to try a newer + <!-- here is the version of Ivy we will use. change this property to try a newer version if you want --> - <property name="ivy.install.version" value="2.0.0-beta1"/> - <property name="ivy.jar.dir" value="${basedir}/ivy"/> - <property name="ivy.jar.file" value="${ivy.jar.dir}/ivy.jar"/> + <property name="ivy.install.version" value="2.4.0"/> + <property name="ivy.jar.dir" value="${basedir}/ivy"/> + <property name="ivy.jar.file" value="${ivy.jar.dir}/ivy.jar"/> <property name="build.dir" value="build"/> <property name="src.dir" value="src"/> <target name="download-ivy" unless="skip.download"> - <mkdir dir="${ivy.jar.dir}"/> - <!-- download Ivy from web site so that it can be used even without any special installation --> - <echo message="installing ivy..."/> - <get src="https://repo1.maven.org/maven2/org/apache/ivy/ivy/${ivy.install.version}/ivy-${ivy.install.version}.jar" - dest="${ivy.jar.file}" usetimestamp="true"/> + <mkdir dir="${ivy.jar.dir}"/> + <!-- download Ivy from web site so that it can be used even without any special installation --> + <echo message="installing ivy..."/> + <get src="https://repo1.maven.org/maven2/org/apache/ivy/ivy/${ivy.install.version}/ivy-${ivy.install.version}.jar" + dest="${ivy.jar.file}" usetimestamp="true"/> </target> <!-- ================================= target: install-ivy - this target is not necessary if you put ivy.jar in your ant lib directory - if you already have ivy in your ant lib, you can simply remove this + this target is not necessary if you put ivy.jar in your Ant lib directory + if you already have Ivy in your Ant lib, you can simply remove this target and the dependency the 'go' target has on it ================================= --> <target name="install-ivy" depends="download-ivy" description="--> install ivy"> - <!-- try to load ivy here from local ivy dir, in case the user has not already dropped - it into ant's lib dir (note that the latter copy will always take precedence). - We will not fail as long as local lib dir exists (it may be empty) and - ivy is in at least one of ant's lib dir or the local lib dir. --> - <path id="ivy.lib.path"> - <fileset dir="${ivy.jar.dir}" includes="*.jar"/> - </path> - <taskdef resource="org/apache/ivy/ant/antlib.xml" - uri="antlib:org.apache.ivy.ant" classpathref="ivy.lib.path"/> + <!-- try to load Ivy here from local Ivy dir, in case the user has not already dropped + it into Ant's lib dir (note that the latter copy will always take precedence). + We will not fail as long as local lib dir exists (it may be empty) and + Ivy is in at least one of Ant's lib dir or the local lib dir. --> + <path id="ivy.lib.path"> + <fileset dir="${ivy.jar.dir}" includes="*.jar"/> + </path> + <taskdef resource="org/apache/ivy/ant/antlib.xml" + uri="antlib:org.apache.ivy.ant" classpathref="ivy.lib.path"/> </target> - <!-- ================================= + <!-- ================================= target: go Go ivy, go! ================================= --> <target name="go" depends="install-ivy, generate-src" description="--> resolve dependencies, compile and run the project"> - <echo message="using ivy to resolve commons-lang 2.1..."/> + <echo message="using ivy to resolve commons-lang 2.1..."/> <!-- here comes the magic line: asks ivy to resolve a dependency on - commons-lang 2.1 and to build an ant path with it from its cache --> + commons-lang 2.1 and to build an Ant path with it from its cache --> <ivy:cachepath organisation="commons-lang" module="commons-lang" revision="2.1" pathid="lib.path.id" inline="true"/> - <echo message="compiling..."/> + <echo message="compiling..."/> <mkdir dir="${build.dir}"/> <javac srcdir="${src.dir}" destdir="${build.dir}" classpathref="lib.path.id"/> - <echo> + <echo> We are now ready to execute our simple program with its dependency on commons-lang. Let's go! - </echo> + </echo> <java classname="example.Hello"> <classpath> <path refid="lib.path.id"/> @@ -100,9 +100,9 @@ Let's go! </java> </target> - <!-- ================================= + <!-- ================================= target: generate-src - 'Generates' the class source. It actually just echo a simple java + 'Generates' the class source. It actually just echo a simple Java source code to a file. In real life this file would already be present on your file system, and this target wouldn't be necessary. ================================= --> @@ -115,10 +115,10 @@ import org.apache.commons.lang.WordUtils; public class Hello { public static void main(String[] args) { - String message = "hello ivy !"; + String message = "hello ivy !"; System.out.println("standard message : " + message); System.out.println("capitalized by " + WordUtils.class.getName() - + " : " + WordUtils.capitalizeFully(message)); + + " : " + WordUtils.capitalizeFully(message)); } } </echo> @@ -131,21 +131,21 @@ public class Hello { <delete includeemptydirs="true" quiet="true"> <fileset dir="${src.dir}"/> <fileset dir="${build.dir}"/> - </delete> + </delete> </target> <!-- ================================= target: clean-ivy ================================= --> - <target name="clean-ivy" description="--> clean the ivy installation"> - <delete dir="${ivy.jar.dir}"/> - </target> + <target name="clean-ivy" description="--> clean the Ivy installation"> + <delete dir="${ivy.jar.dir}"/> + </target> <!-- ================================= target: clean-cache ================================= --> - <target name="clean-cache" depends="install-ivy" - description="--> clean the ivy cache"> - <ivy:cleancache/> - </target> + <target name="clean-cache" depends="install-ivy" + description="--> clean the Ivy cache"> + <ivy:cleancache/> + </target> </project> http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/samples/eclipse-plugin/build.xml ---------------------------------------------------------------------- diff --git a/asciidoc/samples/eclipse-plugin/build.xml b/asciidoc/samples/eclipse-plugin/build.xml index 8b182c8..dacffab 100644 --- a/asciidoc/samples/eclipse-plugin/build.xml +++ b/asciidoc/samples/eclipse-plugin/build.xml @@ -18,7 +18,7 @@ --> <project name="eclipse-plugin-build" xmlns:ivy="ivy"> - <!-- Load Ivy ant tasks --> + <!-- Load Ivy Ant tasks --> <taskdef uri="ivy" resource="org/apache/ivy/ant/antlib.xml"/> <!-- If Ivy is not in Ant's classpath, get the jar of Ivy and use the following --> <!-- taskdef rather than the above one --> http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/samples/standard-osgi/build.xml ---------------------------------------------------------------------- diff --git a/asciidoc/samples/standard-osgi/build.xml b/asciidoc/samples/standard-osgi/build.xml index c8ac62b..297d7bc 100644 --- a/asciidoc/samples/standard-osgi/build.xml +++ b/asciidoc/samples/standard-osgi/build.xml @@ -29,7 +29,7 @@ </path> <taskdef uri="ivy" resource="org/apache/ivy/ant/antlib.xml" classpathref="ivy.classpath" /--> - <!-- Load Bnd ant tasks --> + <!-- Load Bnd Ant tasks --> <taskdef uri="bnd" resource="org/apache/ivy/ant/antlib.xml"/> <!-- If Bnd is not in Ant's classpath, get the jar of Bnd and use the following --> <!-- taskdef rather than the above one --> http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings.adoc b/asciidoc/settings.adoc index 3ebd151..63d2747 100644 --- a/asciidoc/settings.adoc +++ b/asciidoc/settings.adoc @@ -19,9 +19,9 @@ = Ivy Settings -In order to work as you want, ivy sometimes needs some settings. Actually, ivy can work with no specific settings at all, see the link:tutorial/defaultconf.html[default settings documentation] for details about that. But ivy is able to work in very different contexts. You just have to configure it properly. +In order to work as you want, Ivy sometimes needs some settings. Actually, Ivy can work with no specific settings at all, see the link:tutorial/defaultconf.html[default settings documentation] for details about that. But Ivy is able to work in very different contexts. You just have to configure it properly. -Settings are specified through an xml file, usually called `ivysettings.xml`. To configure ivy from ant, you just have to use the link:use/settings.html[settings] datatype with the path of your settings file. +Settings are specified through an XML file, usually called `ivysettings.xml`. To configure Ivy from Ant, you just have to use the link:use/settings.html[settings] datatype with the path of your settings file. Here is an example of the settings file: @@ -45,22 +45,22 @@ Here is an example of the settings file: </ivysettings> ---- -__Note: To work, this settings file needs a property file named ivysettings-file.properties in the same directory as the settings file, with ivy variables you want in it.__ +__Note: To work, this settings file needs a property file named ivysettings-file.properties in the same directory as the settings file, with Ivy variables you want in it.__ -Mainly, the settings enable you to configure the default cache directory used by ivy and the dependency resolvers that it will use to resolve dependencies. +Mainly, the settings enable you to configure the default cache directory used by Ivy and the dependency resolvers that it will use to resolve dependencies. Some useful variables are available for use in settings files: * ivy.settings.dir + - this variable references the directory in which the ivysettings itself is. This is available if the settings has been loaded as a file. In case of a URL, it takes the part before the last slash of the URL, if any. If the URL has no slash, then this variable is not set. + this variable references the directory in which the settings file itself is. This is available if the settings has been loaded as a file. In case of a URL, it takes the part before the last slash of the URL, if any. If the URL has no slash, then this variable is not set. * ivy.settings.file + - the path of the settings file itself if it has been loaded as a file only. If it has been loaded as a URL, this variable is not set + the path of the settings file itself if it has been loaded as a file only. If it has been loaded as a URL, this variable is not set. * ivy.settings.url + - the URL pointing to the settings file. This is set both when it has been loaded as a file or a URL + the URL pointing to the settings file. This is set both when it has been loaded as a file or a URL. *__since 1.4__* Note that all link:https://docs.oracle.com/javase/7/docs/api/java/lang/System.html#getProperties()[Java system properties] are available as ivy variables in your settings file. @@ -80,15 +80,12 @@ The settings file is structured in some parts and left open in others. In fact, * link:settings/classpath.html[classpath] * link:settings/typedef.html[typedef] * link:settings/credentials.html[credentials] + * link:settings/signers.html[signers] * link:settings/lock-strategies.html[lock-strategies] * link:settings/caches.html[caches] ** link:settings/caches/cache.html[cache] * link:settings/latest-strategies.html[latest-strategies] - * link:settings/version-matchers.html[version-matchers] - * link:settings/triggers.html[triggers] * link:settings/parsers.html[parsers] - * link:settings/conflict-managers.html[conflict-managers] - * link:settings/outputters.html[outputters] * link:settings/namespaces.html[namespaces] ** link:settings/namespace.html[namespace] *** link:settings/namespace/rule.html[rule] @@ -103,10 +100,16 @@ The settings file is structured in some parts and left open in others. In fact, ** any resolver * link:settings/resolvers.html[resolvers] ** any resolver + * link:settings/conflict-managers.html[conflict-managers] * link:settings/modules.html[modules] ** link:settings/module.html[module] + * link:settings/outputters.html[outputters] * link:settings/statuses.html[statuses] ** link:settings/status.html[status] + * link:settings/triggers.html[triggers] + * link:settings/version-matchers.html[version-matchers] + * link:settings/timeout-constraints.html[timeout-constraints] + ** link:settings/timeout-constraint.html[timeout-constraint] == ivysettings @@ -121,18 +124,16 @@ Root tag of any ivysettings file. [options="header"] |======= |Element|Description|Cardinality -|link:settings/property.html[property]|set an ivy variable|0..n -|link:settings/properties.html[properties]|loads a properties file as ivy variables|0..n -|link:settings/settings.html[settings]|configures ivy with some defaults|0..1 +|link:settings/property.html[property]|set an Ivy variable|0..n +|link:settings/properties.html[properties]|loads a properties file as Ivy variables|0..n +|link:settings/settings.html[settings]|configures Ivy with some defaults|0..1 |link:settings/include.html[include]|includes another settings file|0..n |link:settings/classpath.html[classpath]|add a location in the classpath used to load plugins|0..n -|link:settings/typedef.html[typedef]|defines new types in ivy|0..n +|link:settings/typedef.html[typedef]|defines new types in Ivy|0..n |link:settings/lock-strategies.html[lock-strategies]|defines lock strategies|0..1 |link:settings/caches.html[caches]|defines repository cache managers|0..1 |link:settings/latest-strategies.html[latest-strategies]|defines latest strategies|0..1 |link:settings/parsers.html[parsers]|defines module descriptor parsers|0..1 -|link:settings/version-matchers.html[version-matchers]|defines new version matchers|0..1 -|link:settings/triggers.html[triggers]|register triggers on ivy events|0..1 |link:settings/namespaces.html[namespaces]|defines new namespaces|0..1 |link:settings/macrodef.html[macrodef]|defines a new macro resolver|0..n |link:settings/resolvers.html[resolvers]|defines dependency resolvers|0..1 @@ -140,4 +141,7 @@ Root tag of any ivysettings file. |link:settings/modules.html[modules]|defines rules between modules and dependency resolvers|0..1 |link:settings/outputters.html[outputters]|defines the list of available report outputters|0..1 |link:settings/statuses.html[statuses]|defines the list of available statuses|0..1 +|link:settings/triggers.html[triggers]|register triggers on Ivy events|0..1 +|link:settings/version-matchers.html[version-matchers]|defines new version matchers|0..1 +|link:settings/timeout-constraints.html[timeout-constraints]|defines the list of available timeout-constraints|0..n |======= http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/caches.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/caches.adoc b/asciidoc/settings/caches.adoc index 6d0413e..6fe23c7 100644 --- a/asciidoc/settings/caches.adoc +++ b/asciidoc/settings/caches.adoc @@ -32,10 +32,9 @@ By default, Ivy defines one repository cache instance, called `default-cache`, w Since repository cache implementations are pluggable, you can either define new cache instances based on the default implementation provided in Ivy using the link:../settings/caches/cache.html[cache] child element, or use custom cache implementations using child elements as you have defined using link:../settings/typedef.html[typedef]. -`ivyPattern` and `artifactPattern` are used to configure the default way Ivy stores ivy files and artifacts in repository cache(s). Usually you do not have to change this, unless you want to use the cache directly from another tool, which is not recommended. These patterns are relative to the repository cache base directory. +`ivyPattern` and `artifactPattern` are used to configure the default way Ivy stores Ivy files and artifacts in repository cache(s). Usually you do not have to change this, unless you want to use the cache directly from another tool, which is not recommended. These patterns are relative to the repository cache base directory. -`checkUpToDate` indicates to ivy if it must check date of artifacts before retrieving them (i.e. copying them from -cache to another place in your filesystem). Usually it is a good thing to check date to avoid unnecessary copy, even if it's most of the time a local copy. +`checkUpToDate` indicates to Ivy if it must check date of artifacts before retrieving them (i.e. copying them from cache to another place in your filesystem). Usually it is a good thing to check date to avoid unnecessary copy, even if it's most of the time a local copy. == Attributes @@ -48,7 +47,7 @@ cache to another place in your filesystem). Usually it is a good thing to check |defaultCacheDir|a path to a directory to use as default basedir for both resolution and repository cache(s)|No, defaults to .ivy2/cache in the user's home directory |resolutionCacheDir|the path of the directory to use for all resolution cache data|No, defaults to defaultCacheDir |repositoryCacheDir|the path of the default directory to use for repository cache data. *This should not point to a directory used as a repository!*|No, defaults to defaultCacheDir -|ivyPattern|default pattern used to indicate where ivy files should be put in the repository cache(s)|No, defaults to [organisation]/[module]/ivy-[revision].xml +|ivyPattern|default pattern used to indicate where Ivy files should be put in the repository cache(s)|No, defaults to [organisation]/[module]/ivy-[revision].xml |artifactPattern|default pattern used to indicate where artifact files should be put in the repository cache(s)|No, defaults to [organisation]/[module]/[type]s/[artifact]-[revision].[ext] |[line-through]#checkUpToDate#|Indicates if date should be checked before retrieving artifacts from cache. __Deprecated, we recommend using overwriteMode on the link:../use/retrieve.html[retrieve] task instead__|No, defaults to true http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/caches/cache.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/caches/cache.adoc b/asciidoc/settings/caches/cache.adoc index decd3ec..368117a 100644 --- a/asciidoc/settings/caches/cache.adoc +++ b/asciidoc/settings/caches/cache.adoc @@ -27,7 +27,7 @@ Defines a repository cache instance based on the default repository cache implem The default repository cache implementation caches files on the local filesystem in subdirectories of a configured base directory. -By default also, the parsed module descriptor read from the cache are kept in a memory cache in case they are reused. This may enhance the performance of multi-module build, provided that all modules are build using the same ivy instance. The size of this memory cache is configurable in term of number of module descriptors. A size of 0 means no memory caching. +By default also, the parsed module descriptor read from the cache are kept in a memory cache in case they are reused. This may enhance the performance of multi-module build, provided that all modules are build using the same Ivy instance. The size of this memory cache is configurable in terms of number of module descriptors. A size of 0 means no memory caching. == Attributes @@ -38,10 +38,10 @@ By default also, the parsed module descriptor read from the cache are kept in a |Attribute|Description|Required |name|name of the cache instance|Yes |basedir|the path of the base directory to use to put repository cache data. *This should not point to a directory used as a repository!*|No, defaults to repositoryCacheDir defined in link:../../settings/caches.html[caches] -|ivyPattern|the pattern to use to store cached ivy files|No, defaults to default cache ivy pattern as configured in link:../../settings/caches.html[caches] +|ivyPattern|the pattern to use to store cached Ivy files|No, defaults to default cache Ivy pattern as configured in link:../../settings/caches.html[caches] |artifactPattern|the pattern to use to store cached artifacts|No, defaults to default cache artifact pattern as configured in link:../../settings/caches.html[caches] |useOrigin|true to avoid the copy of local artifacts to the cache and use directly their original location, false otherwise. -To know if an artifact is local ivy asks to the resolver. Only filesystem resolver is considered local by default, but this can be disabled if you want to force the copy on one filesystem resolver and use the original location on another. Note that it is safe to use useOrigin even if you use the cache for some non local resolvers. In this case the cache will behave as usual, copying files to the cache. Note also that this only applies to artifacts, not to ivy files, which are still copied in the cache.|No. defaults to the default value configured in link:../../settings/caches.html[caches] +To know if an artifact is local, Ivy asks the resolver. Only filesystem resolver is considered local by default, but this can be disabled if you want to force the copy on one filesystem resolver and use the original location on another. Note that it is safe to use useOrigin even if you use the cache for some non local resolvers. In this case the cache will behave as usual, copying files to the cache. Note also that this only applies to artifacts, not to Ivy files, which are still copied in the cache.|No. defaults to the default value configured in link:../../settings/caches.html[caches] |lockStrategy|the name of the link:../../settings/lock-strategies.html[lock strategy] to use for this cache|No, defaults to default lock strategy as configured in link:../../settings/caches.html[caches] |defaultTTL|the default link:../../settings/caches/ttl.html[TTL] to use when no specific one is defined|No, defaults to ${ivy.cache.ttl.default} |memorySize|the number of parsed module descriptors to keep in a memory cache.|No, default to 150 @@ -80,4 +80,4 @@ To know if an artifact is local ivy asks to the resolver. Only filesystem resolv ---- -Defines a cache called `mycache`, storing files in the `/path/to/mycache` directory using `[module]/ivy-[revision].xml` as pattern to store Ivy files and `[module]/[artifact]-[revision].[ext]` as pattern to store other artifacts. The lock strategy used by this cache is the `no-lock` strategy, which does not perform any locking. The defaultTTL used is of 1s, meaning that by default dynamic revision result will be stored and used for one second. TTL rules then define that all `latest.integration` revisions will be stored and used for 200ms, while other dynamic revisions from `org1` `org2` and `org3` modules will be stored respectively for 10 minutes 20 seconds; 5 hours; and 2 days and 12 hours. +Defines a cache called `mycache`, storing files in the `/path/to/mycache` directory using `[module]/ivy-[revision].xml` as a pattern to store Ivy files and `[module]/[artifact]-[revision].[ext]` as a pattern to store other artifacts. The lock strategy used by this cache is the `no-lock` strategy, which does not perform any locking. The defaultTTL used is 1 s, meaning that by default dynamic revision result will be stored and used for one second. TTL rules then define that all `latest.integration` revisions will be stored and used for 200 ms, while other dynamic revisions from `org1` `org2` and `org3` modules will be stored respectively for 10 minutes 20 seconds; 5 hours; and 2 days and 12 hours. http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/caches/ttl.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/caches/ttl.adoc b/asciidoc/settings/caches/ttl.adoc index 575d401..1d637ad 100644 --- a/asciidoc/settings/caches/ttl.adoc +++ b/asciidoc/settings/caches/ttl.adoc @@ -27,7 +27,7 @@ Defines a TTL (Time To Live) rule for resolved revision caching. When Ivy resolves a dynamic version constraint (like `latest.integration` or a version range), it can store the result of the resolution (like `latest.integration=1.5.1`) for a given time, called TTL. It means that Ivy will reuse this dynamic revision resolution result without accessing the repositories for the duration of the TTL, unless running link:../../use/resolve.html[resolve] in refresh mode. -This tag let you define a rule to define a TTL specific to a set of dynamic revision, based on the whole module revision information (organization, module name, revision, ...). The revision considered in the rule is the revision before the resolution (for instance `latest.integration`) and not the resolved revision (for instance `1.5.1`). +This tag let you define a rule to define a TTL specific to a set of dynamic revision, based on the whole module revision information (organization, module name, revision, ...). The revision considered in the rule is the revision before the resolution (for instance, `latest.integration`) and not the resolved revision (for instance, `1.5.1`). The rules are evaluated in order, the first matching rule being used to define the TTL. If no rule matches, the cache defaultTTL will be used. @@ -55,7 +55,7 @@ Using a 0ms TTL disable resolved revision caching for the given rule. |Attribute|Description|Required |organisation|the organisation to match to apply the rule.|No, defaults to * |module|the module's name to match to apply the rule.|No, defaults to * -|revision|the module's revision to match to apply the rule. Note that the version is not resolved when evaluating the rule ('latest.integration' for instance).|No, defaults to * +|revision|the module's revision to match to apply the rule. Note that the version is not resolved when evaluating the rule ('latest.integration', for instance).|No, defaults to * |_any extra attribute_|an extra attribute to match to apply the rule.|No, defaults to * |matcher|the link:../../concept.html#matcher[matcher] to use to match the modules to which the resolver should be applied|No, defaults to exact |duration|the TTL to apply (see above for format)|Yes http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/classpath.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/classpath.adoc b/asciidoc/settings/classpath.adoc index 787ec6b..56f7bcb 100644 --- a/asciidoc/settings/classpath.adoc +++ b/asciidoc/settings/classpath.adoc @@ -23,7 +23,7 @@ Includes a jar in the classpath used to load plugins. *__since 1.4__* -This let you add ivy plugins without relying on an external classpath (the ant classpath for instance), therefore easing the use of ivy in multiple execution environments (ant, standalone, IDE plugins, ...). +This let you add Ivy plugins without relying on an external classpath (the Ant classpath, for instance), therefore easing the use of Ivy in multiple execution environments (Ant, standalone, IDE plugins, ...). == Attributes http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/conflict-managers.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/conflict-managers.adoc b/asciidoc/settings/conflict-managers.adoc index 19913ee..506db9c 100644 --- a/asciidoc/settings/conflict-managers.adoc +++ b/asciidoc/settings/conflict-managers.adoc @@ -24,7 +24,7 @@ Defines a list of link:../concept.html#conflict[conflicts managers] usable in Ivy. Each conflict manager is identified by its name, given as an attribute. The child tag used for the conflict manager must be equal to a name of a conflict manager type (either built-in or added with the `typedef` tag). -Here is a list of built-in conflicts managers (which do not require anything in the configuration file): +Here is a list of built-in conflicts managers (which do not require anything in the settings file): * all + @@ -67,7 +67,7 @@ Here is a list of conflict manager types available, which can be used to define * regexp-cm + - This conflict manager is based on a regular expression and throws an exception (i.e. causes a build failure) when a conflict is found with versions with different matching group. For instance if a conflict is found between 1.2.x and 1.3.y it will throw an exception if the regular expression is `(.*)\.\d`, because the matching group will match different strings (1.2 and 1.3). 1.2.1 and 1.2.2 won't throw an exception with the same regular expression. The regular expression is set using the `regexp` attribute. A `ignoreNonMatching` attribute can also be set to simply warn when a version is found which does not match the regular expression, instead of throwing an exception. + This conflict manager is based on a regular expression and throws an exception (i.e. causes a build failure) when a conflict is found with versions with different matching group. For instance, if a conflict is found between 1.2.x and 1.3.y it will throw an exception if the regular expression is `(.*)\.\d`, because the matching group will match different strings (1.2 and 1.3). 1.2.1 and 1.2.2 won't throw an exception with the same regular expression. The regular expression is set using the `regexp` attribute. A `ignoreNonMatching` attribute can also be set to simply warn when a version is found which does not match the regular expression, instead of throwing an exception. http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/latest-strategies.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/latest-strategies.adoc b/asciidoc/settings/latest-strategies.adoc index 3ede771..31ba8f1 100644 --- a/asciidoc/settings/latest-strategies.adoc +++ b/asciidoc/settings/latest-strategies.adoc @@ -29,14 +29,14 @@ The latest strategies which are included in Ivy by default are: * latest-time + - compares the revisions date to know which is the latest. While this is often a good strategy in terms of pertinence, it's drawback is that it can be slow when dealing with remote repositories. If you use ivyrep, for example, Ivy has to ask the http server for the date of each ivy file before knowing which is the latest. + compares the revisions date to know which is the latest. While this is often a good strategy in terms of pertinence, it's drawback is that it can be slow when dealing with remote repositories. If you use ivyrep, for example, Ivy has to ask the HTTP server for the date of each Ivy file before knowing which is the latest. * latest-revision + - compares the revisions as strings, using an algorithm close to the one used in php's version_compare function. + compares the revisions as strings, using an algorithm close to the one used in PHP `version_compare` function. This algorithm takes into account the special meaning of some text. For instance, with this strategy, `1.0-dev1` is considered before `1.0-alpha1`, which in turn is before `1.0-rc1`, which is before `1.0`, which is before `1.0.1`. * latest-lexico + - compares the revisions as strings, using lexicographic order (the one used by java string comparison). + compares the revisions as strings using lexicographic order (the one used by Java string comparison). @@ -53,7 +53,7 @@ This algorithm takes into account the special meaning of some text. For instance == latest-revision -*__since 1.4__* The latest-revision can now be configured to handle more words with special meanings than the one defined in php version_compare function. +*__since 1.4__* The latest-revision can now be configured to handle more words with special meanings than the one defined in PHP `version_compare function. Here is an example of how you can do so: http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/macrodef.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/macrodef.adoc b/asciidoc/settings/macrodef.adoc index b79ccf7..a4c809d 100644 --- a/asciidoc/settings/macrodef.adoc +++ b/asciidoc/settings/macrodef.adoc @@ -21,7 +21,7 @@ *Tag:* macrodef -Defines a new dependency resolver type based upon another. This definition is very similar to the macrodef feature of ant for defining macro tasks. *__since 1.3__* +Defines a new dependency resolver type based upon another. This definition is very similar to the macrodef feature of Ant for defining macro tasks. *__since 1.3__* This task eases the process of creating a new dependency resolver, because it avoids writing Java code. @@ -37,7 +37,7 @@ A macro is defined by declaring an existing resolver within it. Then you can use == Resolvers names -Since you can use the same macro several times it can define several resolvers (in a chain for instance), the resolver names need to be chosen carefully to avoid name conflicts (each resolver must have a unique name). +Since you can use the same macro several times it can define several resolvers (in a chain, for instance), the resolver names need to be chosen carefully to avoid name conflicts (each resolver must have a unique name). Here is how Ivy deals with the names of the resolvers defined in a macro: http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/module.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/module.adoc b/asciidoc/settings/module.adoc index c6865e2..e96c718 100644 --- a/asciidoc/settings/module.adoc +++ b/asciidoc/settings/module.adoc @@ -48,10 +48,10 @@ For each module set, you can configure: |Attribute|Description|Required |organisation|the organisation to match to apply the rule.|No, defaults to * |name|the module's name to match to apply the rule.|No, defaults to * -|revision|the module's revision to match to apply the rule. Note that the version may not be resolved yet (be latest.integration for instance), so be very careful when using this attribute. *__since 2.0__*|No, defaults to * +|revision|the module's revision to match to apply the rule. Note that the version may not be resolved yet (be `latest.integration`, for instance), so be very careful when using this attribute. *__since 2.0__*|No, defaults to * |_any extra attribute_|an extra attribute to match to apply the rule. *__since 2.0__*|No, defaults to * |matcher|the link:../concept.html#matcher[matcher] to use to match the modules to which the resolver should be applied *__since 1.3__*|No, defaults to exactOrRegexp -|resolver|the name of the resolver to apply. The resolver must have been defined in the resolvers section of the configuration file.|No +|resolver|the name of the resolver to apply. The resolver must have been defined in the resolvers section of the settings file.|No |conflict-manager|the name of the conflict manager to apply. *__since 1.4__*|No |branch|the default branch to apply. *__since 1.4__*|No |resolveMode|the resolve mode to use. *__since 2.0__*|No http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/namespace.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/namespace.adoc b/asciidoc/settings/namespace.adoc index 8d77a48..0fe41e0 100644 --- a/asciidoc/settings/namespace.adoc +++ b/asciidoc/settings/namespace.adoc @@ -21,7 +21,7 @@ Defines a new namespace. A namespace is identified by a name, which can be referenced by one of the link:../settings/resolvers.html[resolvers]. -An overview of Namespaces is given in the link:../settings/namespaces.html[namespaces] documentation. +An overview of namespaces is given in the link:../settings/namespaces.html[namespaces] documentation. A namespace mainly consists of a list of rules, each rule defining a translation between a system namespace and the defined namespace, and vice versa. http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/namespace/src.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/namespace/src.adoc b/asciidoc/settings/namespace/src.adoc index 515bb75..ff6c988 100644 --- a/asciidoc/settings/namespace/src.adoc +++ b/asciidoc/settings/namespace/src.adoc @@ -21,7 +21,7 @@ *Tag:* src -Defines the acceptation part of a translation rule. If a name matches this src, it will be translated using the dest part. +Defines the matching part of a translation rule. If a name matches this src, it will be translated using the dest part. == Attributes http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/outputters.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/outputters.adoc b/asciidoc/settings/outputters.adoc index d284a53..932a037 100644 --- a/asciidoc/settings/outputters.adoc +++ b/asciidoc/settings/outputters.adoc @@ -21,7 +21,7 @@ *Tag:* outputters -Defines a list of report outputters usable in ivy. +Defines a list of report outputters usable in Ivy. A report outputter is used at the end of the resolve process to generate a report of how the resolve has been performed. @@ -45,7 +45,7 @@ Two report outputters are registered by default: * an xml report outputter (link:https://git-wip-us.apache.org/repos/asf?p=ant-ivy.git;a=blob;f=src/java/org/apache/ivy/plugins/report/XmlReportOutputter.java[XmlReportOutputter]) + - which produces an xml report in the cache, which is mandatory for correct Ivy behaviour, since it's that report which is used when you do a post resolve step in a separate build from the resolve itself. It's also this xml report which is processed to generate all the different reports available in the link:../use/report.html[report] task. + which produces an XML report in the cache, which is mandatory for correct Ivy behaviour, since it's that report which is used when you do a post resolve step in a separate build from the resolve itself. It's also this XML report which is processed to generate all the different reports available in the link:../use/report.html[report] task. The child tag used for the parser must be equal to a name of a report outputter type (added with the `typedef` tag). http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/parsers.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/parsers.adoc b/asciidoc/settings/parsers.adoc index a0ec4c7..242067a 100644 --- a/asciidoc/settings/parsers.adoc +++ b/asciidoc/settings/parsers.adoc @@ -21,19 +21,19 @@ *Tag:* parsers -Defines a list of module descriptor parsers usable in ivy. Each parser defines which resources (which descriptor file) it accepts. +Defines a list of module descriptor parsers usable in Ivy. Each parser defines which resources (which descriptor file) it accepts. The child tag used for the parser must be equal to a name of a parser type (added with the `typedef` tag). -Note that when looking for a parser, ivy queries the parsers list in the reverse order. So the last parser in the list will be queried first. Consequently, if the last parser accepts all resources, the other parsers will _never_ have a chance to parse the resource. +Note that when looking for a parser, Ivy queries the parsers list in the reverse order. So the last parser in the list will be queried first. Consequently, if the last parser accepts all resources, the other parsers will _never_ have a chance to parse the resource. Two parsers are available by default and thus do not need to be declared in this section: -* ivy file parser + - this is the parser used for ivy xml files. This parser is used for resources that aren't accepted by any other parser. +* Ivy file parser + + this is the parser used for Ivy XML files. This parser is used for resources that aren't accepted by any other parser. -* pom parser + -this parser is able to parse Maven 2 `pom` files +* POM parser + +this parser is able to parse Maven 2 POM XML files == Child elements http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/properties.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/properties.adoc b/asciidoc/settings/properties.adoc index e276eb5..5a1d4e7 100644 --- a/asciidoc/settings/properties.adoc +++ b/asciidoc/settings/properties.adoc @@ -22,9 +22,9 @@ *Tag:* properties -Loads a properties file into ivy variables. See the variables chapter above for details about ivy variables. +Loads a properties file into Ivy variables. See the variables chapter above for details about Ivy variables. -*__Since 2.0__*: it is possible to access environment variables. This can be done by specifying the environment attribute. This attribute specifies the prefix which can be used to access these environment variables. For instance, if you specify `environment="env"`, you can access the `PATH` environment variable with the `env.PATH` property name. +*__Since 2.0__*: it is possible to access environment variables. This can be done by specifying the environment attribute. This attribute specifies the prefix which can be used to access these environment variables. For instance, if you specify `environment="env"`, you can access the `PATH` environment variable with the `env.PATH` property. name. == Attributes http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/property.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/property.adoc b/asciidoc/settings/property.adoc index bfbd998..67cbfa6 100644 --- a/asciidoc/settings/property.adoc +++ b/asciidoc/settings/property.adoc @@ -23,7 +23,7 @@ Defines an ivy variable. -*__since 1.3__*: The optional override attribute enables you to avoid overriding the previous value of the variable, which makes the definition behave like an ant property, which is particularly useful to define default values (values which are used only if they haven't been defined yet). +*__since 1.3__*: The optional override attribute enables you to avoid overriding the previous value of the variable, which makes the definition behave like an Ant property, which is particularly useful to define default values (values which are used only if they haven't been defined yet). == Attributes http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/resolvers.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/resolvers.adoc b/asciidoc/settings/resolvers.adoc index 14703dd..9013740 100644 --- a/asciidoc/settings/resolvers.adoc +++ b/asciidoc/settings/resolvers.adoc @@ -21,7 +21,7 @@ *Tag:* resolvers -Defines a list of dependency resolvers usable in ivy. Each dependency resolver is identified by its name, given as an attribute. +Defines a list of dependency resolvers usable in Ivy. Each dependency resolver is identified by its name, given as an attribute. The child tag used for the dependency resolver must be equal to a name of a dependency resolver type (either built-in or added with the typedef tag). @@ -61,17 +61,17 @@ Here is the list of built-in resolvers: [options="header",cols="15%,50%,35%"] |======= |Name|Type|Description -|link:../resolver/ivyrep.html[IvyRep]|Standard|Finds ivy files on ivyrep and artifacts on ibiblio. +|link:../resolver/ivyrep.html[IvyRep]|Standard|Finds Ivy files on ivyrep and artifacts on ibiblio. |link:../resolver/ibiblio.html[IBiblio]|Standard|Finds artifacts on ibiblio. -|link:../resolver/packager.html[Packager]|Standard|Finds ivy files and packaging instructions via URLs, then creates artifacts by following the instructions. -|link:../resolver/filesystem.html[FileSystem]|Standard|This very performant resolver finds ivy files and artifacts in your file system. -|link:../resolver/url.html[Url]|Standard|Finds ivy files and artifacts in any repository accessible with urls. -|link:../resolver/vfs.html[Vfs]|Standard|Finds ivy files and artifacts in any repository accessible with link:http://jakarta.apache.org/commons/vfs/[apache commons vfs]. -|link:../resolver/ssh.html[ssh]|Standard|Finds ivy files and artifacts in any repository accessible with ssh. -|link:../resolver/sftp.html[sftp]|Standard|Finds ivy files and artifacts in any repository accessible with sftp. -|link:../resolver/jar.html[Jar]|Standard|Finds ivy files and artifacts within a specified jar. +|link:../resolver/packager.html[Packager]|Standard|Finds Ivy files and packaging instructions via URLs, then creates artifacts by following the instructions. +|link:../resolver/filesystem.html[FileSystem]|Standard|This very performant resolver finds Ivy files and artifacts in your file system. +|link:../resolver/url.html[URL]|Standard|Finds Ivy files and artifacts in any repository accessible with URLs. +|link:../resolver/vfs.html[VFS]|Standard|Finds Ivy files and artifacts in any repository accessible with link:http://jakarta.apache.org/commons/vfs/[Apache Commons VFS]. +|link:../resolver/ssh.html[SSH]|Standard|Finds Ivy files and artifacts in any repository accessible with SSH. +|link:../resolver/sftp.html[SFTP]|Standard|Finds Ivy files and artifacts in any repository accessible with SFTP. +|link:../resolver/jar.html[Jar]|Standard|Finds Ivy files and artifacts within a specified jar. |link:../resolver/chain.html[Chain]|Composite|Delegates the finding to a chain of sub resolvers. -|link:../resolver/dual.html[Dual]|Composite|Delegates the finding of ivy files to one resolver and of artifacts to another. +|link:../resolver/dual.html[Dual]|Composite|Delegates the finding of Ivy files to one resolver and of artifacts to another. |link:../resolver/obr.html[OBR]|Standard|Resolve modules as OSGi bundles listed by an OSGi obr.xml. |link:../resolver/updatesite.html[Eclipse updatesite]|Standard|Resolve modules as OSGi bundles which are hosted on an Eclipse update site. |======= @@ -89,7 +89,7 @@ All resolvers of the same type share some common features and attributes detaile All standard resolvers support several options for validation. -The `validate` attribute is used to configure if ivy files should be checked against the ivy file xml schema. +The `validate` attribute is used to configure if Ivy files should be checked against the Ivy file XML schema. The `checkconsistency` attribute allows you to enable or disable consistency checking between what is expected by Ivy when it finds a module descriptor, and what the module descriptor actually contains. @@ -117,8 +117,8 @@ Resolvers can be optionally configured to use a `timeoutConstraint` so that the Any resolver which is able to parse a Maven pom.xml file has to detect the related sources or javadocs artifacts. This often involves several network connections even if neither the sources nor the javadoc are requested to be downloaded. -*__since 2.5__* Setting the property `ivy.maven.lookup.sources` to `false` disable the lookup of the sources artifact. -And setting the property `ivy.maven.lookup.javadoc` to `false` disable the lookup of the javadoc artifact. +*__since 2.5__* Setting the property `ivy.maven.lookup.sources` to `false` disables the lookup of the sources artifact. +And setting the property `ivy.maven.lookup.javadoc` to `false` disables the lookup of the javadoc artifact. === Attributes @@ -128,17 +128,17 @@ And setting the property `ivy.maven.lookup.javadoc` to `false` disable the looku |======= |Attribute|Description|Required|Composite|Standard |name|the name which identifies the resolver|Yes|Yes|Yes -|validate|indicates if resolved ivy files should be validated against ivy xsd|No, defaults to call setting|Yes|Yes +|validate|indicates if resolved Ivy files should be validated against Ivy schema (xsd)|No, defaults to call setting|Yes|Yes |force|Indicates if this resolver should be used in force mode (see above). *__since 2.0__*|No, defaults to false|No|Yes -|checkmodified|Indicates if this resolver should check lastmodified date to know if an ivy file is up to date.|No, defaults to ${ivy.resolver.default.check.modified}|No|Yes +|checkmodified|Indicates if this resolver should check lastmodified date to know if an Ivy file is up to date.|No, defaults to ${ivy.resolver.default.check.modified}|No|Yes |changingPattern|Indicates for which revision pattern this resolver should check lastmodified date to know if an artifact file is up to date. *__since 1.4__*. See link:../concept.html#change[cache and change management] for details.|No, defaults to none|Yes|Yes |changingMatcher|The name of the link:../concept.html#matcher[pattern matcher] to use to match a revision against the configured changingPattern. *__since 1.4__*. See link:../concept.html#change[cache and change management] for details.|No, defaults to exactOrRegexp|Yes|Yes |alwaysCheckExactRevision|Indicates if this resolver should check the given revision even if it's a special one (like latest.integration). *__since 1.3__*|No, defaults to ${ivy.default.always.check.exact.revision}|No|Yes |namespace|The name of the namespace to which this resolver belongs *__since 1.3__*|No, defaults to 'system'|Yes|Yes |checkconsistency|true to check consistency of module descriptors found by this resolver, false to avoid consistency check *__since 1.3__*|No, defaults to true|No|Yes -|descriptor|'optional' if a module descriptor (usually an ivy file) is optional for this resolver, 'required' to refuse modules without module descriptor *__since 2.0__*|No, defaults to 'optional'|No (except dual)|Yes -|allownomd|_DEPRECATED. Use descriptor="required \| optional" instead._ - true if the absence of module descriptor (usually an ivy file) is authorised for this resolver, false to refuse modules without module descriptor *__since 1.4__*|No, defaults to true|No (except dual)|Yes +|descriptor|'optional' if a module descriptor (usually an Ivy file) is optional for this resolver, 'required' to refuse modules without module descriptor *__since 2.0__*|No, defaults to 'optional'|No (except dual)|Yes +|allownomd|__Deprecated. Use descriptor="required \| optional" instead.__ + true if the absence of module descriptor (usually an Ivy file) is authorised for this resolver, false to refuse modules without module descriptor *__since 1.4__*|No, defaults to true|No (except dual)|Yes |checksums|a comma separated list of link:../concept.html#checksum[checksum algorithms] to use both for publication and checking *__since 1.4__*|No, defaults to ${ivy.checksums}|No|Yes |latest|The name of the latest strategy to use.|No, defaults to 'default'|Yes|Yes |cache|The name of the cache manager to use.|No, defaults to the value of the default attribute of caches|No|Yes @@ -171,4 +171,4 @@ And setting the property `ivy.maven.lookup.javadoc` to `false` disable the looku ---- -Defines a filesystem resolver, named `1`, which is then used in two chains, the first which combines the filesystem resolver with an ivyrep resolver, and second which combines the filesystem resolver with an ibiblio resolver, and which returns the first module found, and uses the whole chain to download artifacts (see corresponding resolvers documentation for details about them). Resolver `1` will use a cache named `cache-1` which should have been defined under the caches element. +Defines a filesystem resolver, named `1`, which is then used in two chains, the first combining the filesystem resolver with an ivyrep resolver, and second combining the filesystem resolver with an ibiblio resolver, which returns the first module found, and uses the whole chain to download artifacts (see corresponding resolvers documentation for details about them). Resolver `1` will use a cache named `cache-1` which should have been defined in the caches element. http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/settings.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/settings.adoc b/asciidoc/settings/settings.adoc index 6fbea28..215c744 100644 --- a/asciidoc/settings/settings.adoc +++ b/asciidoc/settings/settings.adoc @@ -21,15 +21,15 @@ *Tag:* settings -Configures some important ivy info: default resolver, latest strategy, conflict manager and some others. +Configures some important Ivy info: default resolver, latest strategy, conflict manager and some others. The default resolver is used whenever nothing else is configured in the modules section of the settings file. It should give the name of a dependency resolver defined in the link:../settings/resolvers.html[resolvers] section of the settings file. The default latest strategy and conflict manager can also be configured here. -_validate_ indicates if ivy files should generally be validated against the xsd or not. This setting is only a default value, and can be overridden: +_validate_ indicates if Ivy files should generally be validated against the schema (xsd) or not. This setting is only a default value, and can be overridden: - 1. in ant tasks + 1. in Ant tasks 2. in resolvers So if there is a setting in the resolver, it always wins against all other settings. @@ -47,14 +47,14 @@ So if there is a setting in the resolver, it always wins against all other setti |defaultBranch|the default branch to use for all modules, except if they have a link:../settings/module.html[module specific branch setting]. *__since 1.4__*|No, defaults to no default branch |defaultResolveMode|the default link:../use/resolve.html[resolve mode] to use for all modules, except if they have a link:../settings/module.html[module specific resolve mode setting]. *__since 2.0__*|No, defaults to 'default' |[[circularDependencyStrategy]]circularDependencyStrategy|the name of the link:../concept.html#circular[circular dependency strategy] to use *__since 1.4__*|No, defaults to warn -|validate|Indicates if ivy files should be validated against ivy.xsd or not.|No, defaults to true -|useRemoteConfig|true to configure ivyrep and ibiblio resolver from a remote configuration file (updated with changes in those repository structure if any) (*__since 1.2__*)|No, defaults to false +|validate|Indicates if Ivy files should be validated against ivy.xsd or not.|No, defaults to true +|useRemoteConfig|true to configure ivyrep and ibiblio resolver from a remote settings file (updated with changes in those repository structure if any) (*__since 1.2__*)|No, defaults to false |httpRequestMethod|specifies the HTTP method to use to retrieve information about an URL. Possible values are 'GET' and 'HEAD'. This setting can be used to solve problems with firewalls and proxies. (*__since 2.0__*)|No, defaults to 'HEAD' |[line-through]#defaultCache#|a path to a directory to use as default basedir for both resolution and repository cache(s). + __Deprecated, we recommend using defaultCacheDir on the link:../settings/caches.html[caches] tag instead__|No, defaults to .ivy2/cache in user home |[line-through]#checkUpToDate#|Indicates if date should be checked before retrieving artifacts from cache. + __Deprecated, we recommend using overwriteMode on the link:../use/retrieve.html[retrieve] task instead__|No, defaults to true -|[line-through]#cacheIvyPattern#|a pattern to indicate where ivy files should be put in cache. + +|[line-through]#cacheIvyPattern#|a pattern to indicate where Ivy files should be put in cache. + __Deprecated, we recommend using ivyPattern on the link:../settings/caches.html[caches] tag instead__|No, defaults to [organisation]/[module]/ivy-[revision].xml |[line-through]#cacheArtifactPattern#|a pattern to indicate where artifact files should be put in cache. + __Deprecated, we recommend using artifactPattern on the link:../settings/caches.html[caches] tag instead__|No, defaults to [organisation]/[module]/[type]s/[artifact]-[revision].[ext] http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/signers.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/signers.adoc b/asciidoc/settings/signers.adoc index a83e1e5..8a0f5d0 100644 --- a/asciidoc/settings/signers.adoc +++ b/asciidoc/settings/signers.adoc @@ -23,7 +23,7 @@ *__since 2.2__* -Defines a list of detached signature generators usable in ivy. Each generator is identified by its name, given as an attribute. +Defines a list of detached signature generators usable in Ivy. Each generator is identified by its name, given as an attribute. The child tags used to configure the signature generator must be equal to the name of a signature generator type (either built-in or added with the typedef tag). Ivy supports the following signature generator out of the box: @@ -53,7 +53,7 @@ Ivy supports the following signature generator out of the box: This generator is capable of generating an OpenPGP compatible ASCII armored detached signature. -*Remark:* This generator uses the link:http://www.bouncycastle.org/java.html[BouncyCastle OpenPGP] library. Before this generator can be used, these libraries must be available on Ivy's classpath. +*Remark:* This generator uses the link:http://www.bouncycastle.org/java.html[BouncyCastle OpenPGP] library. Before this generator can be used, the library and its JCE provider library must be available on Ivy's classpath. http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/statuses.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/statuses.adoc b/asciidoc/settings/statuses.adoc index 1c0c6d0..79b2f5b 100644 --- a/asciidoc/settings/statuses.adoc +++ b/asciidoc/settings/statuses.adoc @@ -23,7 +23,7 @@ Defines the list of available statuses. *__since 1.4__* -By default, ivy has 3 statuses: `release`, `milestone` and `integration`. By adding a statuses section to your ivysettings file, you define the statuses you want to use. Note that in this case if you still want to have ivy default statuses you will have to declare them. +By default, Ivy has 3 statuses: `release`, `milestone` and `integration`. By adding a statuses section to your ivysettings file, you define the statuses you want to use. Note that in this case, if you still want to have Ivy default statuses, you will have to declare them. The `integration` property on each status is only used for recursive delivery, an integration dependency being delivered if the caller is not in integration state itself. @@ -38,7 +38,7 @@ NOTE: The statuses order is important, the first is considered the more mature, [options="header",cols="15%,50%,35%"] |======= |Attribute|Description|Required -|default|the name of the status to use when none is declared in an ivy file|No, defaults to the last status declared +|default|the name of the status to use when none is declared in an Ivy file|No, defaults to the last status declared |======= @@ -66,5 +66,5 @@ NOTE: The statuses order is important, the first is considered the more mature, ---- -Defines 3 statuses, `gold`, `silver` and `bronze`. The default status used when none is declared in an ivy file will be `bronze`. -It is also considered as an integration status, and thus doesn't trigger any recursive delivery. +Defines 3 statuses, `gold`, `silver` and `bronze`. The default status used when none is declared in an Ivy file will be `bronze`. +It is also considered an integration status, and thus doesn't trigger any recursive delivery. http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/timeout-constraint.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/timeout-constraint.adoc b/asciidoc/settings/timeout-constraint.adoc index ace99ea..c91afa1 100644 --- a/asciidoc/settings/timeout-constraint.adoc +++ b/asciidoc/settings/timeout-constraint.adoc @@ -30,14 +30,14 @@ Defines a named timeout constraint that can then be referenced from other places |======= |Attribute|Description|Required |name|name of timeout constraint|Yes -|connectionTimeout|An integer value, in milli seconds, that will be used as the timeout while establishing a connection. + +|connectionTimeout|An integer value, in milliseconds, that will be used as the timeout while establishing a connection. + A value greater than `0` is used literally as the timeout. + A value of `0` indicates no timeout and typically translates to wait-forever kind of semantics. + -A value lesser than `0` lets the users of this timeout constraint decide what semantics to use. That effectively, implies implementation specific semantics|No, defaults to `-1` -|readTimeout|An integer value, in milli seconds, that will be used as the timeout while reading content from a resource to which an connection has been established. + +A value less than `0` lets the users of this timeout constraint decide what semantics to use. That effectively, implies implementation specific semantics|No, defaults to `-1` +|readTimeout|An integer value, in milliseconds, that will be used as the timeout while reading content from a resource to which an connection has been established. + A value greater than `0` is used literally as the timeout. + A value of `0` indicates no timeout and typically translates to wait-forever kind of semantics. + -A value lesser than `0` lets the users of this timeout constraint decide what semantics to use. That effectively, implies implementation specific semantics|No, defaults to `-1` +A value less than `0` lets the users of this timeout constraint decide what semantics to use. That effectively, implies implementation specific semantics|No, defaults to `-1` |======= == Examples http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/triggers.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/triggers.adoc b/asciidoc/settings/triggers.adoc index acfd5ac..6004cdf 100644 --- a/asciidoc/settings/triggers.adoc +++ b/asciidoc/settings/triggers.adoc @@ -33,7 +33,7 @@ Ivy supports 3 type of triggers out of the box: calls a target in the same build as the original one whenever a particular event occurs. * ant-build + - calls an ant build which may be in another ant build script. + calls an Ant build which may be in another Ant build script. * log + echo a message, usually in a file @@ -453,8 +453,8 @@ Ivy comes with 3 built-in triggers: [options="header",cols="15%,50%"] |======= |Name|Description -|ant-build|Triggers an ant build. Note that by default the ant build is triggered only once per build file, the property onlyonce can be set to false to change this. -|ant-call|Calls a target in the current ant build. +|ant-build|Triggers an Ant build. Note that by default the ant build is triggered only once per build file, the property onlyonce can be set to false to change this. +|ant-call|Calls a target in the current Ant build. |log|Logs a message on the console or in a log file. |======= @@ -495,8 +495,8 @@ Among these attributes, you will find how to select when the trigger should be p ---- -Triggers an ant build of the ant file `${ivy.settings.dir}/[module]/build.xml` (where `[module]` is replaced by the name of the dependency resolved) with the target "publish", just before resolving a dependency with a `latest.integration` revision. -Note that by default the ant build is triggered only once per build file. See below to see how to trigger the build more than once. +Triggers an Ant build of the Ant file `${ivy.settings.dir}/[module]/build.xml` (where `[module]` is replaced by the name of the dependency resolved) with the target "publish", just before resolving a dependency with a `latest.integration` revision. +Note that by default the Ant build is triggered only once per build file. See below to see how to trigger the build more than once. ''' @@ -527,7 +527,7 @@ Same as before, but this time the builds will be triggered as many time as the d ---- -Triggers an ant call of the target unzip just after downloading a zip artifact, prefixing all parameters to the target with `dep`. +Triggers an Ant call of the target unzip just after downloading a zip artifact, prefixing all parameters to the target with `dep`. Here is how the target can look like: [source, xml] http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/settings/typedef.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/settings/typedef.adoc b/asciidoc/settings/typedef.adoc index a956dcf..4b1003e 100644 --- a/asciidoc/settings/typedef.adoc +++ b/asciidoc/settings/typedef.adoc @@ -21,7 +21,7 @@ *Tag:* typedef -Defines a new type in ivy. Useful to define new dependency resolvers, in particular, but also latest strategies. +Defines a new type in Ivy. Useful to define new dependency resolvers, in particular, but also latest strategies. See link:../extend.html[how to write and plug your own dependency resolver] for details. == Attributes http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/standalone.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/standalone.adoc b/asciidoc/standalone.adoc index 1f7dfb2..d03f79c 100644 --- a/asciidoc/standalone.adoc +++ b/asciidoc/standalone.adoc @@ -95,7 +95,7 @@ usage: ivy -version displays version information ---- -*__since 1.3__* System properties are included as ivy variables, so you can easily define an ivy variable like this: +*__since 1.3__* System properties are included as Ivy variables, so you can easily define an Ivy variable like this: [source,shell] ---- @@ -109,7 +109,7 @@ java -Dmyivyvar=myvalue org.apache.ivy.Main [parameters] java -jar ivy.jar ---- -calls ivy with default configuration using ivy.xml in the current dir +calls Ivy with default configuration using ivy.xml in the current dir ''' @@ -118,7 +118,7 @@ calls ivy with default configuration using ivy.xml in the current dir java -jar ivy.jar -settings path/to/myivysettings.xml -ivy path/to/myivy.xml ---- -calls ivy with given ivysettings file using given ivy file +calls Ivy with given Ivy settings file using given Ivy file ''' @@ -129,7 +129,7 @@ calls ivy with given ivysettings file using given ivy file java -jar ivy.jar -settings path/to/myivysettings.xml -dependency apache commons-lang 2.0 ---- -calls ivy with given ivysettings file and resolve apache `commons-lang 2.0`. +calls Ivy with given Ivy settings file and resolve apache `commons-lang 2.0`. This is equivalent to: @@ -161,7 +161,7 @@ with `ivy.xml` like this: java -jar ivy.jar -settings path/to/myivysettings.xml -ivy path/to/myivy.xml -cachepath mycachefile.txt ---- -calls ivy with given ivysettings file and resolves the dependencies found in the given ivy file, and then outputs the classpath of resolved artifacts in cache in a file. This file can then be used to define a classpath corresponding to all the resolved dependencies for any java program. +calls Ivy with given Ivy settings file and resolves the dependencies found in the given Ivy file, and then outputs the classpath of resolved artifacts in cache in a file. This file can then be used to define a classpath corresponding to all the resolved dependencies for any Java program. ''' @@ -172,4 +172,4 @@ calls ivy with given ivysettings file and resolves the dependencies found in the java -jar ivy.jar -settings path/to/myivysettings.xml -dependency bar foo 2.0 -main org.bar.foo.FooMain ---- -calls ivy with given ivysettings file and resolves the dependency `bar` `foo` `2.0`, and then runs `org.foo.FooMain` class with the resolved artifacts as classpath +calls Ivy with given Ivy settings file and resolves the dependency `bar` `foo` `2.0`, and then runs `org.foo.FooMain` class with the resolved artifacts as classpath. http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/terminology.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/terminology.adoc b/asciidoc/terminology.adoc index 1e009c4..536017d 100644 --- a/asciidoc/terminology.adoc +++ b/asciidoc/terminology.adoc @@ -62,7 +62,7 @@ A _module descriptor_ is a generic way of identifying what describes a module: t The most common module descriptors in Ivy are link:ivyfile.html[Ivy Files], xml files with an Ivy specific syntax, and usually called ivy.xml. -But since Ivy is also compatible with maven 2 metadata format (called pom, for Project Object Model), pom files fall into the category of module descriptors. +But since Ivy is also compatible with Maven 2 metadata format (called POM, for Project Object Model), POM files fall into the category of module descriptors. And because Ivy accepts pluggable module descriptor parsers, you can use almost whatever you want as module descriptors. @@ -84,7 +84,7 @@ Although the type of an artifact may (rather accidentally) imply its file format Defining appropriate artifact types for a module is up to its development organisation. Common choices may include: "jar", "binary", "bin", "rc", "exe", "dll", "source", "src", "config", "conf", "cfg", "doc", "api", "spec", "manual", "man", "data", "var", "resource", "res", "sql", "schema", "deploy", "install", "setup", "distrib", "distro", "distr", "dist", "bundle", etc. -Module descriptors are not really artifacts, but they are comparable to an artifact type, i.e. "descriptor" (an ivy file or a Maven POM). +Module descriptors are not really artifacts, but they are comparable to an artifact type, i.e. "descriptor" (an Ivy file or a Maven POM). Electronic signatures or digests are not really artifacts themselves, but can be found with them in repositories. They also are comparable to an artifact type, i.e. "digest" (md5 or sha1). http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/textual.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/textual.adoc b/asciidoc/textual.adoc index d67ddb7..c412a1f 100644 --- a/asciidoc/textual.adoc +++ b/asciidoc/textual.adoc @@ -23,7 +23,7 @@ The conventions have been adopted with Ivy 2.0 are the following: [options="header"] |======= -| what | pattern | exemple +| what | pattern | example | a module without revision | `[organisation]`#`[module]` | `org.apache.ant#ant` | a module with revision | `[organisation]`#`[module]`$$;$$`[revision]` | `org.apache.ant#ant;1.7.0` | a module with (some) configurations | `[organisation]`#`[module]`[`[confs]`] | `org.apache.ant#ant[master,compile,build]` @@ -65,7 +65,7 @@ module C revision 2.5 depends on module D with the version constraint [1.0,1.6]. As you can see, using text conventions is much more concise. -Another benefit is that these conventions are usually used in Ivy console output, and can also be used in some cases to be parsed into Ivy objects (we use it for test cases for instance). To make sure text parsing works fine, we recommend using only a limited range of characters for each attributes of your module identifiers. +Another benefit is that these conventions are usually used in Ivy console output, and can also be used in some cases to be parsed into Ivy objects (we use it for test cases, for instance). To make sure text parsing works fine, we recommend using only a limited range of characters for each attributes of your module identifiers. Here is the recommended characters set for each attribute: http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/toc.json ---------------------------------------------------------------------- diff --git a/asciidoc/toc.json b/asciidoc/toc.json index 20615dd..2c8f190 100644 --- a/asciidoc/toc.json +++ b/asciidoc/toc.json @@ -321,21 +321,21 @@ }, { "id":"resolver/packager", - "title":"Packager resolver", + "title":"Packager Resolver", "children": [ ] }, { "id":"resolver/filesystem", - "title":"File System resolver", + "title":"File System Resolver", "children": [ ] }, { "id":"resolver/url", - "title":"Url Resolver", + "title":"URL Resolver", "children": [ ] @@ -349,35 +349,35 @@ }, { "id":"resolver/dual", - "title":"Dual resolver", + "title":"Dual Resolver", "children": [ ] }, { "id":"resolver/sftp", - "title":"sftp resolver", + "title":"SFTP Resolver", "children": [ ] }, { "id":"resolver/ssh", - "title":"ssh resolver", + "title":"SSH Resolver", "children": [ ] }, { "id":"resolver/vfs", - "title":"vfs resolver", + "title":"VFS Resolver", "children": [ ] }, { "id":"resolver/jar", - "title":"Jar resolver", + "title":"Jar Resolver", "children": [ ] @@ -447,13 +447,6 @@ ] }, { - "id":"settings/signers", - "title":"signers", - "children": [ - - ] - }, - { "id":"settings/statuses", "title":"statuses", "children": [ @@ -838,6 +831,19 @@ ] }, { + "id":"use/report", + "title":"report", + "children": [ + { + "id":"yed", + "title":"Using yEd to layout report graphs", + "children": [ + + ] + } + ] + }, + { "id":"use/repreport", "title":"repreport", "children": [ @@ -866,19 +872,6 @@ ] }, { - "id":"use/report", - "title":"report", - "children": [ - { - "id":"yed", - "title":"Using yEd to layout report graphs", - "children": [ - - ] - } - ] - }, - { "id":"use/settings", "title":"settings", "children": [ http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/tutorial.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/tutorial.adoc b/asciidoc/tutorial.adoc index 9faab9e..d63f68e 100644 --- a/asciidoc/tutorial.adoc +++ b/asciidoc/tutorial.adoc @@ -30,7 +30,7 @@ For the first tutorial you won't even have to install Ivy (assuming you have Ant * Copy link:samples/build.xml[this build file] in an empty directory on your local filesystem (and make sure you name it `build.xml`) + - * Open a console in this directory and run the command: `ant`. That's it! + + * Open a console in that directory and run the command: `ant`. That's it! + If you have any trouble, check our link:http://ant.apache.org/ivy/faq.html[FAQ]. @@ -42,7 +42,7 @@ The following tutorials are available: * link:tutorial/start.html[Quick Start] + - Guides you through your very first steps with ivy. + Guides you through your very first steps with Ivy. * link:tutorial/defaultconf.html[Adjusting default settings] + Gives you a better understanding of the default settings and shows you how to customize them to your needs. @@ -51,7 +51,7 @@ The following tutorials are available: Teaches you how to configure Ivy to find its dependencies in multiple places. * link:tutorial/dual.html[Dual Resolver] + - Helps you configure Ivy to find ivy files in one place and artifacts in another. + Helps you configure Ivy to find Ivy files in one place and artifacts in another. * link:tutorial/dependence.html[Project dependencies] + A starting point for using Ivy in a multi-project environment. @@ -60,7 +60,7 @@ The following tutorials are available: A more complex example demonstrating the use of Ant+Ivy in a multi-project environment. * link:tutorial/conf.html[Using Ivy Module Configurations] + - Shows you how to use configurations in an ivy file to define sets of artifacts. + Shows you how to use configurations in an Ivy file to define sets of artifacts. * link:tutorial/build-repository.html[Building a repository] + Shows you how to build your own enterprise repository. http://git-wip-us.apache.org/repos/asf/ant-ivy/blob/614bf1ad/asciidoc/tutorial/build-repository.adoc ---------------------------------------------------------------------- diff --git a/asciidoc/tutorial/build-repository.adoc b/asciidoc/tutorial/build-repository.adoc index e35aca9..fc8edc6 100644 --- a/asciidoc/tutorial/build-repository.adoc +++ b/asciidoc/tutorial/build-repository.adoc @@ -17,16 +17,16 @@ under the License. //// -The link:../use/install.html[install] Ant task lets you copy a module or a set of modules from one repository to another. This is very useful to build and maintain an enterprise or team repository. If you don't want to give access to the public maven 2 repository to the developers on your team (to keep control over which modules are in use in your company or your team for instance), it can sometimes become tiresome to answer the developers request to add new modules or new versions by hand. +The link:../use/install.html[install] Ant task lets you copy a module or a set of modules from one repository to another. This is very useful to build and maintain an enterprise or team repository. If you don't want to give access to the public Maven 2 repository to the developers on your team (to keep control over which modules are in use in your company or your team, for instance), it can sometimes become tiresome to answer the developers request to add new modules or new versions by hand. -Fortunately the link:../use/install.html[install] task is here to help: you can use specific settings for your repository maintenance build which will be used to maintain your target enterprise repository. These settings will point to another repository (for instance the maven 2 public repository) so that you will just have to ask Ivy to install the modules you want with a simple command line. +Fortunately the link:../use/install.html[install] task is here to help: you can use specific settings for your repository maintenance build which will be used to maintain your target enterprise repository. These settings will point to another repository (for instance, the Maven 2 public repository) so that you will just have to ask Ivy to install the modules you want with a simple command line. To demonstrate this, we will first use a basic ivy settings file to show how it works, and then we will use the advanced link:../settings/namespaces.html[namespaces] features to demonstrate how to deal with naming mismatches between the source and target repository. == The project used -The project that we will use is pretty simple. It is composed of an Ant build file, and two ivy settings files. +The project that we will use is pretty simple. It is composed of an Ant build file, and two Ivy settings files. Here are the public targets that we will use: @@ -54,6 +54,6 @@ Default target: basic This project is accessible in the link:https://git-wip-us.apache.org/repos/asf?p=ant-ivy.git;a=tree;f=src/example/build-a-ivy-repository[src/example/build-a-ivy-repository] -Next steps: -link:../tutorial/build-repository/basic.html[Basic repository copy] +Next steps: + +link:../tutorial/build-repository/basic.html[Basic repository copy] + link:../tutorial/build-repository/advanced.html[Using namespaces]
