ivy中文参考文档(17)-ant任务(5)-publish
2009-09-22 00:00:00 来源:WEB开发网核心提示:1) publish发行当前模块的制品和已解析的描述符(已交付的ivy文件),这个任务的目的是发行当前模块描述符和它的声明的发行制品到仓库中,ivy中文参考文档(17)-ant任务(5)-publish,所有制品必须在这个任务调用前创建,它不会自己创建制品,settingsRef必须被这个任务使用的ivy设置的引用(从
1) publish
发行当前模块的制品和已解析的描述符(已交付的ivy文件)。
这个任务的目的是发行当前模块描述符和它的声明的发行制品到仓库中。
所有制品必须在这个任务调用前创建。它不会自己创建制品,而是只期望能在制品正则表达式之处的地方找到他们。
目标仓库通过在当前ivy设置中声明的解析器的名字来给出。查阅设置文件来获取解析器支持制品发行的细节。
同时也发行已交付的ivy文件(除非你不想),并且甚至会deliver它,如果ivy文件没有在上一次delever调用时交付或者forcedeliver被设置为true。这是为什么这个任务有很多只是为deliver有用的参数。看下面的插图:
从1.4.1起,source artifact pattern 可以通过使用task的属性(artifactspattern)或者使用内嵌制品元素列表(看下面的例子)来指定。
2) 属性
属性 | 描述 | 必要 |
organisation | 要发行的模块的组织名称 | 不。默认为${ivy.organisation}或者最近解析的模块组织名称。 |
module | 要发行的模块的名称 | 不。默认为${ivy.module}或者最近解析的模块名称。 |
revision | 要发行的模块的修订版本,并且也是已经发行的修订版本除非pubrevision被设 | 不。默认为${ivy.revision}或者最近解析的模块修订版本。 |
artifactspattern | 用于查找要发行的制品的正则表达式 | 不。默认为 ${ivy.publish.src.artifacts.pattern} |
resolver | 用来发行的解析器的名称 | 是 |
pubrevision | 用于发行的修订版本 | 不。默认为 ${ivy.deliver.revision} |
pubbranch | 用于发行的分支 | 不。默认为 ${ivy.deliver.branch} |
forcedeliver | true强制隐式的调用deliver,false仅当用于发布的ivy文件不存在时才这样做,从1.4起 | 不。默认为 false |
update | true 在发行前更新ivy文件metadata(revision, branch, publication date 和 status),false相反。当在publish前使用delive时这个通常不是必须的。 | 不。默认为 false |
validate | true强制使用ivy.xsd做ivy文件验证,false强制不做验证。 | 不. 默认使用ivy默认值 (在 settings file中设置) |
replacedynamicrev | true 在交付的文件中使用静态修订版本替换动态修订版本,false 则避开这个替换,从1.3起 | 不。默认为 true |
publishivy | true 发行交付的ivy文件,false则不 | 不。默认为 true |
conf | 用于发行的配置列表,逗号分隔 | 不。默认为所有配置。 |
overwrite | true 覆盖仓库中的文件如果这个修订版本已经存在,false 保持原状 | 不。默认为 false |
warnonmissing | true 当要发行的制品找不到时发出警告 | 不。默认为 true |
haltonmissing | true 当要发行的制品找不到时终止构建 | 不。默认为 true |
srcivypattern | 用于查找要发行(而且如果必要甚至是deliver)的ivy文件的正则表达式,从1.2起 | 不。默认为 artifactspattern 的值 |
pubdate | 用于交付的发行日期,如果必要。这个日期可以是'now',或者是通过以下模式的给出的时间: yyyyMMddHHmmss | 不。默认为 'now' |
status | the status to use for the delivery, if necessary 用于交付的status,如果需要 | 不。默认为 ${ivy.status} |
delivertarget | 用于递归交付的需要调用的target | 不。默认不做递归交付。 |
settingsRef | 必须被这个任务使用的ivy设置的引用(从2.0起) | 不,默认使用'ivy.instance' |
3) 示例
<ivy:publish resolver="local" pubrevision="1.0">
<artifacts pattern="1/[artifact].[ext]" />
<artifacts pattern="2/[artifact].[ext]" />
</ivy:publish>
使用local解析器用修订版本1.0来发行最后解析的模块,在目录1和2中查找制品。
更多精彩
赞助商链接