Jump to content

Apache Ivy

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 演歌ビニール (talk | contribs) at 12:59, 22 February 2016 (External links). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Apache Ivy
Developer(s)Apache Software Foundation
Stable release
2.4.0 / December 26, 2014 (2014-12-26) [1]
Repository
Written inJava
Operating systemCross-platform
PlatformJava
TypeLibrary dependency
LicenseApache License 2.0
Websiteant.apache.org/ivy

Apache Ivy is a transitive dependency manager. It is a sub-project of the Apache Ant project, with which Ivy works to resolve project dependencies. An external XML file defines project dependencies and lists the resources necessary to build a project. Ivy then resolves and downloads resources from an artifact repository: either a private repository or one publicly available on the Internet.

To some degree, it competes with Apache Maven, which also manages dependencies. However, Maven is a complete build tool, whereas Ivy focuses purely on managing transitive dependencies.

Newer build tools and continuous integration servers regularly support or include Ivy:

  • sbt, or "simple build tool," the primary build tool for Scala projects, incorporates Ivy for its dependency management.
  • Grails (until anticipated 3.0 release in 2014)[1]
  • gradle (until replaced by an internal dependency resolution engine in release 1.0)[2]
  • Jenkins

Features

  • Managing project dependencies
  • XML-driven declaration of project dependencies and JAR repositories
  • Automatic retrieval of transitive dependency definitions and resources
  • Automatic integration to publicly available artifact repositories
  • Resolution of dependency closures
  • Configurable project state definitions, which allow for multiple dependency-set definitions
  • Publishing of artifacts into a local enterprise repository

History

Jayasoft first created Ivy in September, 2004, with Xavier Hanin serving as the principal architect and developer of the project. Jayasoft moved hosting of Ivy (then at version 1.4.1) to Apache Incubator in October 2006. Since then, the project has undergone package renaming to reflect its association with the Apache Software Foundation. Package names prefixes of the form fr.jayasoft.ivy have become org.apache.ivy prefixes.

Ivy graduated from the Apache Incubator in October, 2007. As of 2009 it functions as a sub-project of Apache Ant.

See also

  • Apache Maven — An alternative dependency management and build tool

References

  1. ^ "Grails roadmap". grails.org. Retrieved 5 February 2014.
  2. ^ "Gradle 1.0 Release Notes".
  • Steve Loughran, Erik Hatcher: Ant in Action, Manning Publications Company, ISBN 1-932394-80-X
  • JUnit in Action (2nd ed.). Manning. 2011. pp. 145–147. ISBN 978-1-935182-02-3.