ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Maarten Coene <maarten_co...@yahoo.com>
Subject Re: Getting a module's artifacts for build
Date Wed, 10 Feb 2010 20:21:59 GMT
Thanks for the patch Carl,
I've added a comment to the issue. Could you take a look?

An alternative solution to your problem is using xmltask to find the artifacts defined by
your ivy.xml.
I use the approach myself in some of the build files @ work...

Maarten




----- Original Message ----
From: Carl Quinn <carl.quinn@gmail.com>
To: ivy-user@ant.apache.org
Sent: Wed, February 10, 2010 8:36:32 AM
Subject: Re: Getting a module's artifacts for build


Aha, it looks like I'm not the first to ask for this:
http://issues.apache.org/jira/browse/IVY-395

Maybe I'll just extend ivy:info itself and submit a patch. The actual Java
code is pretty easy.



Carl Quinn wrote:
> 
> Good idea using properties, I might try that out.
> 
> My main motivation for eliminating the duplication is that we have
> hundreds of modules that I am convincing teams to convert to Ivy. If I can
> move all the imperative logic to a common core of Ant imports, then all we
> need in each project is the ivy.xml and maybe a tiny build.xml stub. Works
> with Ant, and works with IvyDE and IntelliJ. A very easy sell if I can
> pull it off :)
> 
> I think I will try my hands at an Ivy plugin to add an extended info task.
> 
> 
> 
> Mitch Gitman wrote:
>> 
>> Carl, interesting use case. I can't think of any existing Ivy task that
>> accomplishes what you're looking for.
>> 
>> And I can't say I'd be motivated myself to go to the lengths you're going
>> to
>> to avoid redundancy. However, I can attest that I have run into trouble
>> where I've changed the name of an artifact I'm publishing but I forgot to
>> change the name in the ivy.xml. Then I'd be poring over an error message
>> like:
>> impossible to publish artifacts for [module]: java.io.IOException:
>> missing
>> artifact [artifact]
>> 
>> This problem is strictly a matter of keeping track of the same name in
>> two
>> places. And the straightforward solution is to use a ${} Ant property
>> placeholder for the artifact name in the ivy.xml--since property
>> substitutions are allowed in source (unpublished) ivy.xml files.
>> 
>> On Tue, Feb 9, 2010 at 7:54 PM, Carl Quinn <carl.quinn@gmail.com> wrote:
>> 
>>>
>>> Yes, I've had that part all figured out for awhile. I can build and
>>> publish
>>> all my simple projects now.
>>>
>>> What I would like to do next is to remove all knowledge of specific
>>> artifacts from my Ant files, and derive the artifact build actions from
>>> the
>>> metadata already available in the ivy.xml file. (I don't like
>>> redundancy)
>>>
>>> So, I would like to have something like Ivy:info that also gave me the
>>> artifact declarations from my module's ivy file, including extra
>>> attributes
>>> if possible. All of that this is well before publish. I could then know
>>> what
>>> to build and put into the dist dir and then invoke publish on all of
>>> that.
>>>
>>> Ideas? Or should I write a new Ivy Ant task?
>>>
>>>
>>>
>> 
>> 
> 
> 

-- 
View this message in context: http://old.nabble.com/Getting-a-module%27s-artifacts-for-build-tp27525526p27527071.html
Sent from the ivy-user mailing list archive at Nabble.com.


      

Mime
View raw message