Ivy + IvyRoundUp + IvyDE

10 views
Skip to first unread message

lgringo

unread,
Jan 26, 2010, 5:26:41 PM1/26/10
to ivyroundup
Hello,

Last week was totally Ivy ...

1./ I've read Ivy manuals and tutorials
Everything was easy. I was thinking, Ivy guys are great !

2./ I tried to build my own repository, playing with namespaces.
Everything was buggy. Namespaces rules are complex, and resolve
operations often end with problem if the "pom" refers to some
"parents". (I've just tried to download commons-lang).
I was ready to learn black magic and use maven.

3./ I found IvyRoundup ...
And thought it would save my life. I successfully build my own
repository, I created some ivy and packager files. Everything was fine

4./ ... until I tried IvyDE
Why IvyRoundup does not use the same naming convention as IvyDE ? Why
IvyRoundup renames sources and javadoc files ?

Is there a way (using Ivy or IvyDE) to rename sources.zip into foo-
sources.zip ?
I've found issues 77 and 78 about this problem, but no solution is
given.

Thanks.

Archie Cobbs

unread,
Jan 26, 2010, 6:05:00 PM1/26/10
to ivyro...@googlegroups.com
On Tue, Jan 26, 2010 at 4:26 PM, lgringo <lgr...@gmail.com> wrote:
3./ I found IvyRoundup ...
And thought it would save my life. I successfully build my own
repository, I created some ivy and packager files. Everything was fine

4./ ... until I tried IvyDE
Why IvyRoundup does not use the same naming convention as IvyDE ? Why
IvyRoundup renames sources and javadoc files ?

Ivy RoundUp and IvyDE were developed independently, and there was no coordination on naming conventions.

Not every project supplies source and javadoc artifacts that exactly mirror the JAR artifacts. This may be common in the Maven world, but Ivy RoundUp is more general than Maven. For example, many projects supply multiple JAR artifacts and a single Javadoc and/or source artifact.. in these cases, there is no direct 1:1 correlation from JARs to javadoc/source artifacts.

The "ivy" way to do things is with configurations, not Maven naming conventions (which are brittle). Ivy lets you give whatever names you want, when you pull from the repository.  IvyDE may be making assumptions about how ivy artifacts are named, but where is the ivy documentation that states "all ivy repositories should use this naming convention" ? I think IvyDE is just coming from a Maven-centric world. Nothing wrong with that, but it's just a different paradigm.

Having said that, Ivy RoundUp modules do try to put the source and javadoc artifacts in the corresponding configurations and artifacts names for modules like Spring. Most Maven-originated modules though that have a single javadoc or source file don't need any special artifact name from an Ivy perspective, so none was given. That was done out of ignorance, not malice, following the principle of maximal simplicity.

I'm curious what the IvyDE developers opinion on this is.

-Archie

--
Archie L. Cobbs

Mark Thomas

unread,
Jan 26, 2010, 6:44:10 PM1/26/10
to ivyro...@googlegroups.com
This is a problem unique to IvyDE; the plugins for IntelliJ work perfectly

Sent from my iPhone
--
You received this message because you are subscribed to the Google Groups "ivyroundup" group.
To post to this group, send email to ivyro...@googlegroups.com.
To unsubscribe from this group, send email to ivyroundup+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/ivyroundup?hl=en.

lgringo

unread,
Jan 27, 2010, 9:20:54 AM1/27/10
to ivyroundup
Hi,

I understand, and I think IvyRoundup is more "ivy oriented" than
IvyDE.

Now, the problem may not come from IvyDE, but from Eclipse.

Inside Eclipse, 1 library is a set of jars
* each jar defines its source folder (which can be a zip file, but
not a folder containing zips).
* each jar defines its javadoc folder (which can be a zip file, a
hyperlink, but not a folder containing zips).
Inside IntelliJ, 1 library is a set of jars, a set of sources, and a
set of javadoc. That's more clever, because no association between
artifacts and sources and docs is needed.

So Eclipse can handle only 2 cases
1/ The exact 1:1 mapping
Artifacts: foo & bar
Sources: foo-source.zip , bar-source.zip
Javadoc: foo-javadoc.zip , bar-javadoc.zip

This case is correctly handled by IvyDE

2/ The multiple artifact, grouped sources and javadoc
Artifacts: foo & bar
Sources: source.zip
Javadoc: javadoc.zip

Right now, IvyDE doesn't handle this case properly.

Eclipse can not handle exploded sources for one artifact :
Artifacts: foo
Sources: foo-1-source.zip & foo-2-source.zip
Javadoc: foo-2-javadoc.zip & foo-2-javadoc.zip

As Eclipse can't do that, IvyDE neither.

I hope this last case will never happen ... and I will investigate to
know how to make IvyDE handle the 2nd case correctly.

Thanks a lot ...


On 27 jan, 00:44, Mark Thomas <spatialguru....@gmail.com> wrote:
> This is a problem unique to IvyDE; the plugins for IntelliJ work  
> perfectly
>
> Sent from my iPhone
>

> On Jan 26, 2010, at 5:05 PM, Archie Cobbs <archie.co...@gmail.com>  
> wrote:

> > Groups "ivyroundup" group.> To post to this group, send email toivyr...@googlegroups.com.> To unsubscribe from this group, send email toivyroundup...@googlegroups.com

Reply all
Reply to author
Forward
0 new messages