You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-user@ant.apache.org by Matthew Campbell <mt...@gmail.com> on 2008/03/13 20:05:52 UTC

Resolvers and m2compatible

Hey folks:

    I was wondering what reasons dictate that some resolvers can use
m2compatible and some can't.  My use case is that we have an internal team
server that is structure in the maven2 format in order to support legacy
maven2 projects.  I'm attempting to publish artifacts from our Ivy build to
the repository, but I would like to have the m2compatible transformations
done on the final destination (dots to slashes, etc) so that maven2 projects
would potentially be able to grab the Ivy-produced jars.  We're currently
publishing artifacts via an sftp resolver, but I don't see the m2compatible
option available for it and don't see any other publish-capable resolvers
that have it.  Glancing through the Ivy source, it looks like the
"isM2Compatible" calls climb all the way up to AbstractResourceResolver, so
it seems like almost all resolvers should have the option to have the
transformations done.  I'm fairly new to Ivy (and rough at Maven as well),
so please point me towards anything that would give me a better idea of why
this isn't the case.  If it's just a matter of no one pulling the
functionality into the rest of the resolvers, then I'll look at doing so.
Thanks so much folks for a great tool,


-Matt

Re: Resolvers and m2compatible

Posted by Matthew Campbell <mt...@gmail.com>.
Thanks so much for the response.  As it stands now, I'm using the  
makepom task to do the POM conversion, and it's fine for our  
situation.  We're working primarily with Ivy (and migrating that way  
where we aren't) - the Maven format for our repository and the  
generated POMs are mostly "just in case" for some of our other  
projects.  Anyways, I'm glad to hear there isn't anything spectacular  
standing in the way of at least the repository transformation.  I'll  
experiment with adding m2compatible to some of the other resolvers,  
and if I find that it works for us I'll keep the list posted.  Thanks  
again,


-Matt

On Mar 17, 2008, at 12:54 PM, Xavier Hanin wrote:

> On Thu, Mar 13, 2008 at 8:05 PM, Matthew Campbell
> <mt...@gmail.com> wrote:
>> Hey folks:
>>
>>    I was wondering what reasons dictate that some resolvers can use
>> m2compatible and some can't.  My use case is that we have an  
>> internal team
>> server that is structure in the maven2 format in order to support  
>> legacy
>> maven2 projects.  I'm attempting to publish artifacts from our Ivy  
>> build to
>> the repository, but I would like to have the m2compatible  
>> transformations
>> done on the final destination (dots to slashes, etc) so that maven2  
>> projects
>> would potentially be able to grab the Ivy-produced jars.  We're  
>> currently
>> publishing artifacts via an sftp resolver, but I don't see the  
>> m2compatible
>> option available for it and don't see any other publish-capable  
>> resolvers
>> that have it.  Glancing through the Ivy source, it looks like the
>> "isM2Compatible" calls climb all the way up to  
>> AbstractResourceResolver, so
>> it seems like almost all resolvers should have the option to have the
>> transformations done.  I'm fairly new to Ivy (and rough at Maven as  
>> well),
>> so please point me towards anything that would give me a better  
>> idea of why
>> this isn't the case.  If it's just a matter of no one pulling the
>> functionality into the rest of the resolvers, then I'll look at  
>> doing so.
> The problem is that maven 2 compatibility is only one way: Ivy is able
> to get metadata from maven 2 repo, not to publish to maven repos. To
> do so, we wouldn't no tonly need to convert dots to slashes, which
> would be pretty easy, but also to convert ivy files to poms, which is
> much less easy. We have a task to do this (makepom), but it's often a
> lossy operation.
>
> This doesn't mean I don't see any value in such compatibility, but I
> think it's not easy to achieve, and thus beyond the scope of Ivy
> 2.0.0, unless you want to contribute.
>
> Xavier
>
>> Thanks so much folks for a great tool,
>>
>>
>> -Matt
>>
>
>
>
> -- 
> Xavier Hanin - Independent Java Consultant
> http://xhab.blogspot.com/
> http://ant.apache.org/ivy/
> http://www.xoocode.org/


Re: Resolvers and m2compatible

Posted by Xavier Hanin <xa...@gmail.com>.
On Thu, Mar 13, 2008 at 8:05 PM, Matthew Campbell
<mt...@gmail.com> wrote:
> Hey folks:
>
>     I was wondering what reasons dictate that some resolvers can use
>  m2compatible and some can't.  My use case is that we have an internal team
>  server that is structure in the maven2 format in order to support legacy
>  maven2 projects.  I'm attempting to publish artifacts from our Ivy build to
>  the repository, but I would like to have the m2compatible transformations
>  done on the final destination (dots to slashes, etc) so that maven2 projects
>  would potentially be able to grab the Ivy-produced jars.  We're currently
>  publishing artifacts via an sftp resolver, but I don't see the m2compatible
>  option available for it and don't see any other publish-capable resolvers
>  that have it.  Glancing through the Ivy source, it looks like the
>  "isM2Compatible" calls climb all the way up to AbstractResourceResolver, so
>  it seems like almost all resolvers should have the option to have the
>  transformations done.  I'm fairly new to Ivy (and rough at Maven as well),
>  so please point me towards anything that would give me a better idea of why
>  this isn't the case.  If it's just a matter of no one pulling the
>  functionality into the rest of the resolvers, then I'll look at doing so.
The problem is that maven 2 compatibility is only one way: Ivy is able
to get metadata from maven 2 repo, not to publish to maven repos. To
do so, we wouldn't no tonly need to convert dots to slashes, which
would be pretty easy, but also to convert ivy files to poms, which is
much less easy. We have a task to do this (makepom), but it's often a
lossy operation.

This doesn't mean I don't see any value in such compatibility, but I
think it's not easy to achieve, and thus beyond the scope of Ivy
2.0.0, unless you want to contribute.

Xavier

>  Thanks so much folks for a great tool,
>
>
>  -Matt
>



-- 
Xavier Hanin - Independent Java Consultant
http://xhab.blogspot.com/
http://ant.apache.org/ivy/
http://www.xoocode.org/