安装和配置
安装 Ivy
下载并解压 Ivy-2.2.0 ;
Eclipse->Window->Preferences->Ant->Runtime->Global Entries->Add External JARs ,添加 IVY 压缩包里的 ivy-2.2.0.jar 和 jsch-0.1.31.jar 。
安装 IvyDE
Eclipse->Help->Install New Software->Add->Location 设为:
http://www.apache.org/dist/ant/ivyde/updatesite
根据要求完成后续安装过程。
配置 Ivy
Eclipse->Window->Preferences->Ivy->Settings->Ivy settings path 设为:
${project_loc}/ivysettings.xml
开发过程改进
项目根目录下将不再有 lib 文件夹,相应地两个文件: ivy.xml 和 ivysettings.xml ,开发人员在 ivy.xml 中声明本项目依赖的包(包括第三方包和其他项目的发布包), ivysettings.xml 定义项目共享库的位置以及从库中获取包的方法。这两个文件由共享库管理员维护,通过 SVN 保持项目成员间的一致。
classpath 整合
使用 Ivy 的第一步是将 Ivy 管理的依赖包整合进项目的 classpath 中,首先将项目依赖写入 ivy.xml 文件,然后设置项目属性: Java Build Path->Libraries->Add Library->IvyDE Managed Dependencies ,后面使用默认设置即可。
依赖管理
开发过程中需要增加依赖包时,根据包的类型不同分两种情况分别说明。
引用第三方包
以 dom4j-1.6.1 为例,在 Maven 共享库 上搜索“ dom4j ”,选择搜索结果中的“ dom4j>dom4j ”,点击进入后选择 1.6.1 版,点击进入后找到“ Apache Ivy ”,将下面的内容(依赖说明)
拷贝到 ivy.xml 中,并增加“ transitive="false" ”(以避免下载 dom4j 的依赖包):
保存文件后如果出现“包无法解析”错误,说明共享库中没有此三方包,需要将依赖说明发给共享库管理员,由其更新共享库后重新解析即可。
引用项目发布包
在 ivy.xml 中添加:
定义项目发布包
定义本项目所发布的产品,以便于其他项目引用,在 ivy.xml 的 publications 部分声明产品名称、类型、扩展名等,例如:
发布过程改进
打包脚本
纯 Ant 打包脚本向 Ant+Ivy 打包脚本迁移非常简单,只要在编译任务开始前增加“获取”任务,其他完全保持不变:
通过修改 pattern 属性,可以将依赖包在 lib 文件夹里以不同的方式组织,例如安装“类型”属性分文件夹放置:
pattern="${lib.dir}/[type]/[artifact].[ext]"
发布项目产品
在 ant 脚本中添加以下任务:
<ivy:publish artifactspattern="${build.dist.dir}/[artifact].[ext]"
resolver="
" status="
" pubrevision="
"/>
release 发布时, status=release ,非 release 发布时,去掉 status 和 pubrevision 属性。