[
https://issues.apache.org/jira/browse/MNG-5305?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15336855#comment-15336855
]
Christian Schulte commented on MNG-5305:
----------------------------------------
If you add an empty {{<relativePath/>}} element to your {{<parent>}}
declarations, you get the behaviour you are asking for. There are use cases the
{{<relativePath>}} is needed for. That is checking out a multi module project
and executing some phase from the default lifecycle before {{install}}. We need
to support {{mvn compile}} or {{mvn verify}} without any of the artifacts being
available in some repository (local or remote). I see no issue with searching a
parent pom on disk. It's documented and people should just know what they do. I
think Maven is doing the right thing here. If you checkout only a single
module, it will resolve the parent(s) from the repository, if you checkout the
complete multi-module project it will resolve the parent(s) from that project
structure.
> Deprecate relativePath
> ----------------------
>
> Key: MNG-5305
> URL: https://issues.apache.org/jira/browse/MNG-5305
> Project: Maven
> Issue Type: Improvement
> Components: Inheritance and Interpolation
> Reporter: Reto Gmuer
>
> The concept of relativePath is alien to the overall Maven design of having
> project directory that only depends on entities in the repositories. With
> relative-paths the build might yield to different results depending on were a
> project folder is located in the local filesystem.
> The parent POM resolution was changed in Maven 3. Because of this explicit
> relativePaths need to be specified more often for reactor builds to be built
> in the correct order. The reason for this (according to Maven 3.x
> compatibility note) is to improve consistency: "In Maven 2, building the
> child project in isolation could fail while the reactor build would succeed
> to resolve the parent.". However this behaviour is inconsistent with the
> resolution of the other dependencies, in fact the above is true for any Maven
> version when a dependency that is part of the reactor is not available in a
> suitable versions in the repository: in this case the build of the individual
> project fails while the build of the whole reactor succeeds.
> Because of this relativePath should be marked as deprecated and the parent
> should be treated like a dependency when computing the build order of reactor
> projects.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)