ivy指南(4)-多解析器
2009-09-26 00:00:00 来源:WEB开发网清理ivy缓存通常你可以放心的做(除了性能外):它仅仅是缓存,所有的东西都可以从仓库中再次获得。对于从maven2过来的人来说,这听起来有点奇怪,但是记住在ivy中,缓存不是本地仓库,东西被隔离地保持干净。
步骤 3: 运行项目
进入chainedresolvers-project目录,并简单运行ant。
I:\chained-resolvers\chainedresolvers-project>ant
Buildfile: src\example\chained-resolvers\chainedresolvers-project\build.xml
resolve:
[ivy:retrieve] :: Ivy 2.0.0-beta1-local-20071104204849 - 20071104204849 :: http://ant.apache.org/ivy/ ::
[ivy:retrieve] :: loading settings :: file = C:\dev\data\opensource_workspace\ivy\src\example\chained-resolvers\config\ivysettings.xml
[ivy:retrieve] :: resolving dependencies :: [ org.apache | chained-resolvers | working@BEN-ScokartG ]
[ivy:retrieve] confs: [default]
[ivy:retrieve] found [ commons-lang | commons-lang | 2.0 ] in ibiblio
[ivy:retrieve] found [ org.apache | test | 1.0 ] in libraries
[ivy:retrieve] downloading http://www.ibiblio.org/maven/commons-lang/jars/commons-lang-2.0.jar...
[ivy:retrieve] ............................................................................................
[ivy:retrieve] ............................................................................................(165kB)
[ivy:retrieve] .. (0kB)
[ivy:retrieve] [SUCCESSFUL ] [ commons-lang | commons-lang | 2.0 ]/commons-lang.jar[jar] (5928ms)
[ivy:retrieve] downloading C:\dev\data\opensource_workspace\ivy\src\example\chained-resolvers\config\repository\test-1.0.jar...
[ivy:retrieve] .. (1kB)
[ivy:retrieve] [SUCCESSFUL ] [ org.apache | test | 1.0 ]/test.jar[jar] (10ms)
[ivy:retrieve] :: resolution report ::
---------------------------------------------------------------------
| | modules || artifacts |
| conf | number| search|dwnlded|evicted|| number|dwnlded|
---------------------------------------------------------------------
| default | 2 | 2 | 0 | 0 || 2 | 2 |
---------------------------------------------------------------------
[ivy:retrieve] :: retrieving :: [ org.apache | chained-resolvers ]
[ivy:retrieve] confs: [default]
[ivy:retrieve] 2 artifacts copied, 0 already retrieved
run:
[mkdir] Created dir: C:\dev\data\opensource_workspace\ivy\src\example\chained-resolvers\chainedresolvers-project\build
[javac] Compiling 1 source file to C:\dev\data\opensource_workspace\ivy\src\example\chained-resolvers\chainedresolvers-project\build
[java] standard message :example world !
[java] capitalized by org.apache.commons.lang.WordUtils : Example World !
[java] upperCased by test.StringUtils : EXAMPLE WORLD !
BUILD SUCCESSFUL
Total time: 12 seconds
我们能看到在resolve任务的日志中,两个依赖被获取(2个制品)并被复制到ivy缓存目录(2个下载)。
run target成功地使用了来自ibiblio仓库的commons-lang.jar和来自本地仓库中的test.jar
3) 更进一步
这个非常简单的例子有助于看到如何对在一个链中的两个解析器进行基本的设置。对于那些想知道这个解析器提供的所有特性的人,可以查看链解析器的参考文档。
从这个基本的例子中尼可以得到的最有趣的事情是:
* 链并不局限于两个内嵌解析器,你可以使用任何你想要的数目。
* 通过设置returnFirst="true",你可以得到一个一旦发现给定模块就停止的链。
* 通过设置dual="true",整个完整的链将被用于模块描述符和制品,而当dual="false",在链中找到模块描述符(如果有任何一个)的解析器将被用于查找制品。
更多精彩
赞助商链接