maven-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Vitor Miranda <vitorbmira...@gmail.com>
Subject 409 Conflict - snapshots/releases repositories
Date Fri, 04 May 2012 15:37:29 GMT
The error:

"ArtifactDescriptorException: Failed to read artifact descriptor for
javax.faces:jsf-api:jar:1_1_01: ArtifactResolutionException: Could not
transfer artifact javax.faces:jsf-api:pom:1_1_01 from/to snapshots-repo (
http://ip/artifactory/snapshots-repo): Failed to transfer
http://ip/artifactory/snapshots-repo/javax/faces/jsf-api/1_1_01/jsf-api-1_1_01.pom.
Error code 409, Conflict"

Hi!

Anyone know exactly what happens when you set
<snapshots|releases><enabled>true</enabled></snapshots|releases> on
the
repository section? The documentation and my intuition said that, if you
set one to false, Maven won't even care to search/download the specified
type of artifact from that repository. If it's true, Maven will look on
that repository for that type of the artifact . If it doesn't find, just go
on and look on other repositories, if any are defined. Fair enough to me,
but I had this issue which took me hours to solve:

We have four repositories.

- Snapshots
- Releases (which is empty so far)
- External
- Release/Legacy (was the first repo created, will migrate to External soon)

The first two are what they are meant to, External is a repository for the
3rd party artifacts that we use (no snapshots there) and Legacy also has
3rd party artifacts (no snapshots also). Then there's this POM which
references three other POMs, which then have dependencies. All were
deployed on the Snapshots repo. Some of the jar dependencies were on
legacy, others on external. I was getting the infamous 409 - Conflict at 3
or 4 artifacts when adding one of the "super poms" as a dependency -
doesn't happen when adding a specifc jar dependency.

Solution: set <releases><enabled>false</enabled></releases> on the
snapshots repo configuration.

Why? I don't get this. It's ok to filter releases/snapshots to the correct
repositories, but why this error? To show an example: when adding the
highest parent pom, I get the 409 I pasted above on 4 artifacts. All of
those are on legacy, and none is a snapshot. So maven tries to get a
release-type artifact from a snapshot repo only. Obviously there's nothing
there (but I didn't specify Maven to not get from it (enabled is true), so
it's ok). What I'd expect to happen: can't find the artifact here (which,
in case, there actually ISN'T any similar artifact there), I'll just move
to the other repositories. What happens: 409.

At least we found a solution, but I'd appreciate any help on understanding
this issue.

Thanks!

-- 
Vitor Branco de Miranda
BCC - UFSCar - São Carlos/SP
+55 19 92013531
vitorbmiranda@gmail.com

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message