ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jeff Evans (IT)" <>
Subject Best way to deal with revision mismatch for building local repository?
Date Tue, 17 Nov 2009 23:25:07 GMT

I am in the process of building a local Ivy repository from public
Maven sources, as outlined in the tutorial here:

I've been using an IBiblio resolver (primarily against, but also a few others as needed).  It
has been going pretty well overall, but a consistent source of
confusion on my part is dealing with revision mismatches.  By this, I
mean some module A depends on a revision of module B that doesn't
exist, but an essentially identical one does.  As an example, one of
the transitive dependencies for
org.apache.activemq#activemq-core;5.3.0 is
groovy#groovy-all;1.0-jsr-03.  However, the revision in the actual POM
for that module
gives a revision of "03".

So when I attempt to install org.apache.activemq#activemq-core;5.3.0
with transitive dependencies, Ivy fails with "inconsistent module
descriptor file found in
bad module name: expected='groovy-all' found='groovy-all-1.0-jsr'; bad
revision: expected='1.0-jsr-03' found='03'"

Adding a rule to the namespace used by the resolver would seem to be
futile here, since the revision actually is "1.0-jsr-03", based on the
directory structure.  The only workaround I've found is to copy the
files to a local filesystem and use a chained resolver that attempts
the filesystem first, then the standard public Maven repos (via the
IBiblio resolver).

Another related case is
commons-attributes#commons-attributes-compiler;2.2, where the POM
has revision "2.1" instead of the expected "2.2".  Attempting to
install this module fails with a similar error.

Any suggestions on how to deal with cases like these?  Thanks for your time.

View raw message