ivy中文参考文档(18)-ant任务(6)-deliver

1) deliver

交付当前模块的解析好的描述符,而且可能执行依赖的递归交付。

这个任务主要做两个事情:

1.生成一个解析好的ivy 文件

这个任务生成一个当前模块的解析好的描述符,基于最后一次解析。解析好的ivy文件包含交付的模块的已更新信息,例如修订版本和 状态。

此外,所有被包含的配置的文件将包含在ivy文件中,而且变量被他们的值替代。

最终,在解析好的ivy文件中,动态修订版本被在解析过程中找到的静态的修订版本替换,因此这些ivy文件后面可以安全的使用来获得 相同的依赖(前提条件是修订版本唯一的标识一个模块,这是ivy正常使用的基础)。

从1.3起 动态修订版本被静态修订版本的替换可以被关闭,因此动态修订版本被保留在ivy文件中。这对于发行的模块描述符是完全解 析好的推荐标准是一个例外,所以请小心使用。

2.执行递归交付

仅在delever target被设置给delever任务时才这样做。

如果delever target被设置,则为每个和这个任务设置的delever状态对比没有suffisant状态的依赖,它会被调用(通过antcall)。这 意味着如果你交付一个集成修订版本,递归交付不会进行。

如果你交付一个里程碑或者发行修订版本,delever target将和每个集成依赖一起被调用。

delever target被调用时有下面的属性可用:

dependency.name

递归交付的依赖的名称

dependency.published.status

将交付的依赖的状态

dependency.published.version

将交付的依赖的修订版本

dependency.version

将交付的依赖的修订版本

dependency.published.status和dependency.published.version 要求用户通过ant输入任务给出(默认行为),或者对于整个递归交付 过程总是相同,如果下列属性被设置:

recursive.delivery.status

设置被要求交付的所有依赖的状态

recursive.delivery.version

设置被要求交付的所有依赖的版本

通常交付任务自身引发另外一个ant build(使用ant 任务),虽然这取决于你。

交付的ivy文件将使用那些在这里给出的更新它的依赖的修订版本。

时间: 2024-09-29 20:42:27

ivy中文参考文档(18)-ant任务(6)-deliver的相关文章

ivy中文参考文档(17)-ant任务(5)-publish

1) publish 发行当前模块的制品和已解析的描述符(已交付的ivy文件). 这个任务的目的是发行当前模块描述符和它的声明的发行制品到仓库中. 所有制品必须在这个任务调用前创建.它不会自己创建制品,而是只期望能在制品正则表达式之处的地方找到他们. 目标仓库通过在当前ivy设置中声明的解析器的名字来给出.查阅设置文件来获取解析器支持制品发行的细节. 同时也发行已交付的ivy文件(除非你不想),并且甚至会deliver它,如果ivy文件没有在上一次delever调用时交付或者forcedeliv

ivy中文参考文档(13)-ant任务(1)-buildlist

buildlist任务用于获取按照ivy依赖信息从小到大排序的文件(通常是build.xml文件) 列表,或者相反(从1.2之后) 这个任务在结合subant构建相关项目集合时特别有效, 可以确保依赖在其他依赖它的模块之前被构建. 当你要排序的模块的ivy.xml不包含修订版本号,在依赖上定义的rev属性将不被使用. 当你要排序的模块的ivy.xml包含修订版本号,修订版本号将被使用.如果修订版本号和依赖描述不匹配,将会记录警告日志而模块被 认为是不同的模块. 从1.3版本起,root属性也可以

ivy中文参考文档(11)-ant任务

1) ant任务 使用ivy的主要和最频繁的方式是在ant构建文件中.不过,ivy也可以作为独立的应用被调用. 如果你使用ant版本1.6.0 或更高,你仅仅需要添加ivy的命名空间到你的项目中(你的project标签的属性) xmlns:ivy="antlib:org.apache.ivy.ant" 这样你就可以调用ivy任务了. 如果你想让你的构建处理ivy.jar,不管是在ant的lib目录还是在本地的lib目录.你可以类似这样使用任务定义 <path id="i

ivy中文参考文档(21)-ant任务(9)-post resolve tasks

1) post resolve tasks 在ivy中有几个任务被认为是后解析任务(post resolve task),并相应地共享公用行为和设置. 这些任务是: * retrieve * cachefileset * cachepath * artifactproperty (since 2.0) * artifactreport (since 2.0) 所有这些任务都将自动触发resolve,如果: * 在当前构建中没有任何一个keep属性设置为true的任务被调用 * 组合和模块没有设置

ivy中文参考文档(20)-ant任务(8)-cachefileset

1) cachefileset 为配置构建一个有ivy缓存中的制品组成的ant fileset 从1.2版本起). 这是一个后解析任务,有所有后解析任务共有的所有行为和属性.注意这个任务不依赖retrieve,因为构建的fileset是由ivy缓存中的 制品直接构成的. 请尽量采用retrieve + 标准ant 路径创造,这使得你的构建不那么依赖ivy(一旦制品被正确的获得,ivy不再需要). 构建fileset在ant中通过使用给定的id注册,从而可以像其他任务ant fileset一样通过

ivy中文参考文档(19)-ant任务(7)-cachepath

1) cachepath 为解析过的模块配置构建一个由在ivy 缓存(或者取决于useOrigin 设置的原始位置)中的制品组成的ant path. 这是一个后解析任务,有所有后解析任务共有的所有行为和属性. 如果你想让你的构建更少的依赖ivy,你可以考虑使用retrieve 任务.一旦制品被正确的获得,你可以使用标准ant path,这使得ivy 不再必不可少. 构建path在ant中通过使用给定的id注册,从而可以像其他任务ant 路径一样通过使用refid来使用. 2) 属性 属性 描述

ivy中文参考文档(14)-ant任务(2)-resolve

1) 解析 解析任务实际解析在ivy文件中描述的依赖,并将解析后的依赖放置到ivy缓存中. 如果在resolve任务前没有调用configure任务,则将使用默认的configuration (等同于不带参数的调用configure). 在这个任务调用之后,在ant中有四个属性被设置: ivy.organisation 设置为在用于解析的ivy文件中找到的组织名 ivy.module 设置为在用于解析的ivy文件中找到的模块名 ivy.revision 设置为在用于解析的ivy文件中找到的修订版

ivy中文参考文档(16)-ant任务(4)-configure

1) configure configure任务用于通过xml设置文件来配置ivy. 查阅设置文件来获取设置文件自身的细节. 从2.0起可以通过sttings声明来配置ivy.和这个任务的不同之处在于当使用settings声明时,ivy的配置在settings第一次需要时(例 如当你做一次resolve)完成,而configure任务立即执行一次配置,这样如果有某些错误发生可以容易看到. 2) 属性 属性 描述 必要 settingsId The settings id useable in t

ivy中文参考文档(15)-ant任务(3)-retrieve

1) retrieve retrieve任务复制解析好的依赖到你的文件系统的任何位置. 这是一个post resolve任务,带有所有post resolve任务共有的所有的行为和属性. 从1.4起 这个任务甚至可以根据依赖解析的结果用实际应该存在的东西来同步目标目录.这意味着如果设置sync为"true",ivy不仅将 复制必要的文件,而且它还会删除那些不再需要在那里的文件. 同步实际上是删除root目标目录下不再是retrieve任务必须的所有文件和目录. root目标目录是 在目