Ivy是什麼apache
Ivy是一個跟蹤管理項目直接以來關係的工具。Ivy具備良好的靈活性和可配置性,使其能夠適應各類不一樣的依賴管理和構建過程要求;雖然Ivy做爲依賴管理工具,其能夠與Apache Ant進行緊密集成,在依賴管理中充分利用Ant提供的強大的任務功能。Ivy是一個開源項目,它提供了不少強大的功能,可是最受歡迎和最有用的特性是它的靈活性、與ant集成、傳遞依賴管理。eclipse
下面咱們經過一個簡單的例子看一下Ivy怎麼管理依賴的。maven
Ivy.xml工具
<ivy-module version="2.0"> <info organisation="wufengtinghai" module="wufengtinghai.alm"/> <dependencies> <dependency org="org.apache.commons" name="commons-collections4" rev="4.0"/> </dependencies> </ivy-module>
首先Ivy-module元素中的version定義了此文件使用的ivy的版本。在info元素中你能夠定義本身的組織信息和模塊的名稱;dependency元素定義具體的依賴信息,咱們使用org、name和rev來惟一標識依賴項。其中org是組織信息,name是模塊名稱,rev是模塊的版本。那在實際的開發中咱們須要的特定依賴怎麼在此文件中定義呢?Ivy默認使用maven2組件倉庫,因此咱們能夠去mvnrepositoy.com找到咱們須要的模塊信息,具體的信息以下ui
咱們能夠看到圖中有各類依賴管理工具定義依賴的xml。spa
Build.xmlcode
Ivy與ant集成是經過在ant的構建文件裏定義ivy任務實現調用ivy的功能,從而實現依賴管理的。構建文件的內容以下xml
<?xml version="1.0" encoding="UTF-8"?> <!-- ====================================================================== 2015年6月6日 下午3:09:34 ivy description hou ====================================================================== --> <project name="ivyWithDefaultSettingBuild" default="default" xmlns:ivy="antlib:org.apache.ivy.ant"> <description> 使用ivy的基本配置 </description> <property name="libdir" value="../lib"></property> <!-- ================================= target: default ================================= --> <target name="default" description="description"> <ivy:retrieve /> </target> <target name="clearIvyCache" description="description"> <ivy:cleancache/> </target> </project>
咱們能夠看到只須要在構建文件中引入ivy的命名空間便可,而後就能夠聲明ivy任務實現依賴的管理。在這裏retrieve任務會使用默認的配置管理ivy.xml中定義的依賴。blog
經過ant命令執行ip
在eclipse裏經過ant執行
在eclipse裏經過ivyIDE執行