The scenario described below fails for me with or without a mirror setting - as I would expect it to.
Given a child project with a missing parent pom Maven will attempt to resolve the parent given the available context, namely: settings.xml current pom.xml Maven's super-pom If neither the settings.xml nor the current pom.xml define a snapshot repository then the only repository definition is from Maven's default super-pom: <repositories> <repository> <snapshots> <enabled>false</enabled> </snapshots> <id>central</id> <name>Central Repository</name> <url>http://repo.maven.apache.org/maven2</url> </repository> </repositories> which clearly disables snapshots. Defining a mirror in your settings.xml does not change repository definitions, as Tamas mentioned before all it does is re-route requests via the mirror. Therefore since there are no repositories defined with snapshots enabled, Maven will not request to fetch the parent pom snapshot. But if you add a snapshot repository definition somewhere (settings.xml or current pom.xml) then Maven will respect that and request the parent pom snapshot from that repository. If you have a mirror in your settings.xml then that request will be routed via the server defined in the mirror. Note that Maven will also attempt to use the parent relativePath definition from the current pom to attempt to find the parent pom on disk - so assuming the default relativePath, Maven would also be able to find the parent pom if it was located in the parent directory relative to the child (../pom.xml). The same thing is true of snapshot dependencies - if none of your settings.xml, pom.xml, or any pom in the hierarchy define a snapshot repository then Maven will not have anywhere it could request the snapshot from, regardless of the mirror definition (as mirror != repository). Only if the snapshot dependency was available somewhere in the reactor (the effective plan of the build on disk) would Maven be able to resolve the snapshot. HTH On 3 Oct 2013, at 13:22, NRO wrote: > Ok, lets talk with a concrete simple example: > > PARENT POM: > > <project xmlns="http://maven.apache.org/POM/4.0.0" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 > http://maven.apache.org/xsd/maven-4.0.0.xsd"> > <modelVersion>4.0.0</modelVersion> > > <groupId>a.b.c</groupId> > <artifactId>parente</artifactId> > <version>0.0.1-SNAPSHOT</version> > <packaging>pom</packaging> > <name>parente</name> > <description>ddd</description> > > <distributionManagement> > <repository> > <id>internal.project.release</id> > <name>internal.project.release</name> > <url>${maven2Repository_projet}/project_release</url> > </repository> > > <snapshotRepository> > <id>internal.project.snapshot</id> > <name>internal.project.snapshot</name> > <url>${maven2Repository_projet}/project_snapshot</url> > </snapshotRepository> > > <site> > <id>projects_Website</id> > > <url>${projects_Website}/cti/melusine/${project.artifactId}/${project.version}</url> > </site> > </distributionManagement> > </project> > --------------------------------------------------- > CHILD POM > > <project xmlns="http://maven.apache.org/POM/4.0.0" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 > http://maven.apache.org/xsd/maven-4.0.0.xsd"> > <modelVersion>4.0.0</modelVersion> > > <parent> > <groupId>a.b.c</groupId> > <artifactId>parente</artifactId> > <version>0.0.1-SNAPSHOT</version> > </parent> > > <groupId>a.c</groupId> > <artifactId>deleteme</artifactId> > <version>0.0.1-SNAPSHOT</version> > <name>aaa</name> > <description>bbb</description> > </project> > ----------------------------------------------------- > > These very simple Poms demonstrate the problem. > > You need to deply parent first and then delete parent from local repo and > then try building child. > As you notice there are no SNAPSHOT repository declaration nowhere. > Distibution managment is a separate thing in the parent itself. > > > > > -- > View this message in context: > http://maven.40175.n5.nabble.com/Parent-SNAPSHOT-not-resolved-Maven-2-2-1-3-0-4-Nexus-repo-tp5772374p5772383.html > Sent from the Maven - Users mailing list archive at Nabble.com. > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org > For additional commands, e-mail: users-h...@maven.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org