使用Ivy管理项目中的依赖

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执行

 

相关文章
相关标签/搜索