Le 30 août 2011 à 11:39, Nicolas Lalevée a écrit :

> 
> Le 30 août 2011 à 08:19, Marcel Bruch a écrit :
> 
>> Hi,
>> 
>> On 29.08.2011, at 23:25, Nicolas Lalevée wrote:
>> 
>>>> 1. Is it supported to copy/mirror an Eclipse P2 repository into a local 
>>>> Ivy repository?
>>> 
>>> I have successfully made Ivy read a Eclipse P2 repository in order to 
>>> download its jars, like any other jar repository, but nothing more. The 
>>> pieces should be there to do the complete copy chain though.
>> 
>> I'm quite unexperienced with Ivy's Java APIs. Thus, may anybody confirm that 
>> this solution is the way to go?
> 
> I think you should look into the "install" feature of Ivy (see the doc about 
> the ant task [1]) and work around that. But as I dig into it, it seems there 
> a missing piece. The loading of an updatesite is coded and probably works, 
> but there is no Ivy resolver which does the actual bridge between Ivy and the 
> update site loader.
> 
> Here is what I would have done:
> 
> 1. Have a ivysettings.xml in which you have both your updatesite and you 
> local ivy repository configured. (here we're missing the update site 
> resolver).

FYI, I've just committed an updatesite resolver:
http://ant.apache.org/ivy/history/trunk/resolver/updatesite.html

I have not tested it yet though.

Nicolas

> 2. In Java, do have an ivy instance:
> Ivy ivy = new Ivy().configure(settingsFile);
> 3. get the updatesite resolver :
> DependencyResolver resolver = 
> ivy.getSettings().getResolver("myUpdatesiteResolverName");
> 4. Loop on every module with resolver.listOrganisations() and 
> resolver.listModules()
> 5. For each module call: ivy.install(...)
> 
> The missing piece should not be hard to code but I don't have much time now. 
> If you're willing to code it, see the OBRResolver for reference.
> 
> Nicolas
> 

Reply via email to