Any best practices or tools for Ivy repositories?
Asked Answered
V

5

5

we use Gradle for building Java projects and at the moment we have Ivy repositories to store third-party artifacts and also to publish our own artifacts into (repo is build using Gant scripts and the Ivy ANT tasks). but repo management is basic.
Gradle is able to work with a maven repo as well, so switching to a Maven artifact manager like Archiva or Nexus is an option, but perhaps unnecessary. do you know any tools or best practices than can help us in building and maintaining Ivy repos?

just to be clear: we have already read the tutorials and more and understand how to do it, but it's still basic to maintain.

Vyborg answered 12/1, 2010 at 18:49 Comment(2)
Question isn't very clear, IMO.Gettysburg
indeed, i've changed the question titleVyborg
N
6

In the past, I've only used an ivy repository for small private repositories publishing artifacts using simple low level protocols like an FTP site. (All the site needs is a versioned directory layout and an ivy.xml file describing the arifacts)

The maven based repository infrastructure is now so pervasive, with some many projects using it, it's almost pointless to promote an alternative repository management standard.

Sonatype (company behind Maven) make their repository product, Nexus, available to all, because it's in everyone's interest to keep the band-width requirements to Maven central under control.

Thankfully, ivy plays nice with Maven meaning you can take advantage of the best of both worlds.

Natator answered 21/6, 2010 at 17:48 Comment(0)
E
1

I've created a blog entry about my Ivy repository layout and choices. You might have different requirements, but I think it is always good to check other's solutions to get some ideas...

Electrocardiograph answered 21/2, 2011 at 14:49 Comment(0)
M
1

There's a community project called Ivy Roundup that aims to build a consistent, up-to-date ivy repo of common third party libraries. It may be a good idea to match the naming conventions used there, or even better, just get modules from there using the <ivy:install> task.

Mages answered 23/6, 2011 at 11:22 Comment(0)
B
0

In my opinion there isn't much in Ivy's repository to work with because it just works. What you can't do with Ivy's Ant tasks you can do directly from the file system, simple as that.

Admittedly something like changing the artefact name can be difficult but then again that's something you shouldn't do anyway.

Balcke answered 12/1, 2010 at 19:46 Comment(2)
how do you deal with the fact that most libraries don't ship an ivy.xml descriptor? write yourself, convert from maven and strip off the cruft, ... i have a feeling i'm wasting time maintaining artifacts while i shouldn'tVyborg
We usually convert base from Maven (if available), see if it's good enough and tune if needed. Usually the Maven base has extra dependencies which need to be looked through but as is the generated base artifacts have worked decently so far.Balcke
P
0

What I am typically doing in practice when I need a third-party library is to search for it in the MVN repository and then click on the "Ivy" tab to get the Ivy dependency for my ivy.xml.

Panoptic answered 5/11, 2013 at 18:59 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.