On Jan 9, 2009, at 4:31 PM, Les Hazlewood wrote:
Hi all,
I noticed that this same question was posted a few days ago
(http://markmail.org/message/qjdf2hyjepiuktch), but no one responded
to it. I'm hoping to bump this up as I really need this functionality
as well.
I'm seeing the same problems as Allan:
I have Project A that builds and publishes its artifacts to a Maven
repo (Nexus to be exact). Project B, built by Ant+Ivy, requires
projectA-revision-SNAPSHOT.jar in order to function correctly. We're
using Continuous Integration builds and we must ensure that Project B
always builds based on the latest push of Project A's jar to ensure
consistent API usage.
However, Project B's ant+ivy build is NOT pulling the latest project A
-SNAPSHOT .jar after it changes in the Nexus repository. My config is
practically identical to the one Allan posted in his thread.
Can someone please definitively answer how to accomplish this? I've
done what is required according to the end-user documentation and
Allan's thread, but it isn't working.
A simple 'no, this doesn't work in Ivy yet' would suffice as well.
I'd just like to know why I (and Allan) and I'm assuming other people
can't get this to work :/
Fortunately it does work with Ivy. But AFAICT you _have_ to use the
IBiblioResolver. Maven snapshots need special treatment. The normal
Ivy 'changing' mechanism can't be applied here, as in the remote
repository there are only more and more new timestamped versions of
the artifact. There is no artifact changing, with a revision called
'SNAPSHOT'. Only the IBiblioResolver knows how to deal with this.
- Hans
Thanks!
Les
P.S. Here is the relevant Ivy config (changed to match what Allan
had):
<ivysettings>
<resolvers>
<url name="snapshots" m2compatible="true" changingPattern=".*-
SNAPSHOT">
<artifact
pattern="${artifact.repository.url}/snapshots/[organisation]/
[module]/[revision]/[artifact]-[revision].[ext]"/>
</url>
</resolvers>
</ivysettings>
where artifact.repository.url equals
http://someHost:8080/nexus/content/repositories
--
Hans Dockter
Gradle Project lead
http://www.gradle.org