ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Roger <roger.parkinso...@gmail.com>
Subject Re: Reusing config
Date Mon, 23 Jan 2012 01:34:19 GMT
A key difference between maven and ivy is that ivy is normally used with 
ant, so you should expect to use ivy:settings from ant. Often I use 
different settings files in different situations so I would not want ivy 
to find just one settings file and use that all the time.

The ivy.xml file does not go int the jar file, it goes into the 
repository as a separate file. The repository contains jar file(s), 
possibly other artifacts and the ivy.xml file. The publish command 
pushes all the artifacts and the ivy.xml file into the repository.

"we need to always to publish to a specific resolver with specific 
pattern (maven2). Can we encapsulate this configuration in an ant task 
to used for all the modules?"

If you define the resolver in the ivy settings file correctly you should 
be able to use the publish command to sent it
to the repository. I'm not certain about doing this to a maven repo, but 
there are a lot of options in the settings. To handle the pom file
you ought to use the makepom command 
(http://ant.apache.org/ivy/history/2.0.0/use/makepom.html)

Although I said you have to use ant for all this there are other options 
depending on your IDE. Eclipse has a plugin that allows you to specify 
the ivysettings file per-workspace and all projects in that workspace 
will resolve using that. I've not used that approach to publish though, 
I prefer to build with ant and publish is part of my build.

On 23/01/12 11:19, Mansour Al Akeel wrote:
> I do have few questions about ivy.
>
> In maven there's ".m2/settings.xml" that will always be read by maven
> when invoked. Ivy does not have this user wide config, and a file has
> to be always specified using:
> <ivy:settings file="path/to/ivysettings.xml" />
>
> In other words having ~/.ivy2/ivysettings.xml will never be read every
> time without using<ivy:settings />  task
>
> Please correct me if I am wrong.
>
> The second question is about publishing and generating the artifact.
> The packaging has to be done manually using ant, then the ivy.xml resolved file
> and pom file has to be added before the jar is created. Then it can be
> published to a local repo. Is that right or there's a shorter way that
> I missed ? If so, where should the resolved ivy.xml file be located in
> the jar file ?
>
> I am wondering if there is a way to encapsulate some ivy settings in
> an ant task that will be used as antlib ?
> For example, we need to always to publish to a specific resolver with
> specific pattern (maven2). Can we encapsulate this configuration in an
> ant task to used for all the modules ? For example, I want a custom
> task,<mynamespace:install-to-maven />  that will
> automatically install to maven repo without additional config in
> ivysettings.xml. Is this possible ?
>


Mime
View raw message