1) 单独使用
ivy可以非常容易的作为一个单独的程序使用。你所需要的只是一个java1.4+的运行环境(JRE)!
这是如何调用它的例子:
java -jar ivy.jar -?
它将实现类似这样的在线帮助:
==== settings options
-settings <settingsfile> use given file for settings
-cache <cachedir> use given directory for cache
-novalidate do not validate ivy files against xsd
-m2compatible use maven2 compatibility
==== resolve options
-ivy <ivyfile> use given file as ivy file
-dependency <organisation> <module> <revision>
use this instead of ivy file to do the rest of the
work with this as a dependency.
-confs <configurations> resolve given configurations
==== retrieve options
-retrieve <retrievepattern> use given pattern as retrieve pattern
-sync use sync mode for retrieve
==== cache path options
-cachepath <cachepathfile> outputs a classpath consisting of all dependencies
in cache (including transitive ones) of the given
ivy file to the given cachepathfile
==== deliver options
-deliverto <ivypattern> use given pattern as resolved ivy file pattern
==== publish options
-publish <resolvername> use given resolver to publish to
-publishpattern <artpattern> use given pattern to find artifacts to publish
-revision <revision> use given revision to publish the module
-status <status> use given status to publish the module
==== http auth options
-realm <realm> use given realm for HTTP AUTH
-host <host> use given host for HTTP AUTH
-username <username> use given username for HTTP AUTH
-passwd <passwd> use given password for HTTP AUTH
==== launcher options
-main <main> the FQCN of the main class to launch
-args <args> the arguments to give to the launched process
-cp <cp> extra classpath to use when launching process
==== message options
-debug set message level to debug
-verbose set message level to verbose
-warn set message level to warn
-error set message level to error
==== help options
-? display this help
-deprecated show deprecated options
从1.3版本后系统属性被包含在ivy变量中,因此你可以很容易的定义ivy变量,类似这样:
2) 例子
java -jar ivy.jar
用默认配置和当前目录里面的ivy.xml调用ivy
java -jar ivy.jar -settings path/to/myivysettings.xml -ivy path/to/myivy.xml
用给定的ivysettings文件和给定的ivy文件调用ivy
1. 从1.3版本开始
java -jar ivy.jar -settings path/to/myivysettings.xml -dependency apache commons-lang 2.0
用给定的ivysettings文件调用ivy并解析依赖apache commons-lang 2.0.
这等同于:
java -jar ivy.jar -settings path/to/myivysettings.xml -ivy ivy.xml
而ivy.xml内容如下:
<ivy-module version="1.0">
<info organisation="org"
module="standalone"
revision="working"
/>
<dependencies>
<dependency org="apache" name="commons-lang" rev="2.0" conf="default->*"/>
</dependencies>
</ivy-module>
2. 从1.3版本开始
java -jar ivy.jar -settings path/to/myivysettings.xml -ivy path/to/myivy.xml -cachepath mycachefile.txt
用给定的ivysettings文件调用ivy并解析在给定的ivy文件中发现的依赖,然后输出被解析的在缓存中的制品的classpath到文件中。这个文件随后可以被用来为任何java程序定义符合所有被解析的依赖的classpath。
3. 从 1.4开始
java -jar ivy.jar -settings path/to/myivysettings.xml -dependency bar foo 2.0 -main org.bar.foo.FooMain
用给定的ivysettings文件调用ivy并解析依赖bar foo 2.0,然后用解析出来的制品运行类org.foo.FooMain。