apache ivy terminology

https://‮figi.www‬tidea.com

Here are some common Apache Ivy terminology:

  1. Module: A module is a collection of related code that can be packaged and distributed. In Ivy, a module is identified by a unique module descriptor, which specifies the module's name, organization, version, and dependencies.

  2. Dependency: A dependency is a module that a project depends on. In Ivy, dependencies are specified in the project's ivy.xml file, and Ivy is responsible for resolving and downloading those dependencies.

  3. Resolver: A resolver is responsible for resolving dependencies by locating and downloading module artifacts from a repository. Ivy supports several types of resolvers, including local, URL, and Maven resolvers.

  4. Configuration: A configuration is a named set of dependencies that a project depends on for a particular purpose. For example, a project may have a "compile" configuration that includes all the dependencies needed to compile the project's source code, and a "test" configuration that includes additional dependencies needed for testing the project.

  5. Cache: Ivy maintains a cache of downloaded module artifacts and metadata in order to avoid unnecessary network requests. The cache is organized by resolver, module, and revision, and can be configured to use different storage strategies.

  6. Publish: Publishing is the process of making a module available for other projects to depend on. In Ivy, publishing involves creating a module descriptor and publishing the module's artifacts to a repository.

  7. Conflict Resolution: Conflict resolution is the process of selecting the "best" version of a dependency when multiple versions are available. Ivy supports several conflict resolution strategies, including latest, dynamic, and force.