You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Paul Benedict (JIRA)" <ji...@codehaus.org> on 2014/07/02 15:44:43 UTC

[jira] (MNG-4161) possibility to omit version in dependency of same project (and fill in on install/deploy)

     [ https://jira.codehaus.org/browse/MNG-4161?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul Benedict updated MNG-4161:
-------------------------------

    Fix Version/s:     (was: Issues to be reviewed for 3.x)

> possibility to omit version in dependency of same project (and fill in on install/deploy)
> -----------------------------------------------------------------------------------------
>
>                 Key: MNG-4161
>                 URL: https://jira.codehaus.org/browse/MNG-4161
>             Project: Maven
>          Issue Type: New Feature
>          Components: Dependencies, Deployment
>            Reporter: Jörg Hohwiller
>
> I want to suggest a feature discussed on dev-list:
> A <dependency> currently must have <groupId>, <artifactId> and <version>.
> If you have a complex multi-module project you typically have lots of project internal dependencies.
> Typically these dependencies point to the same version that is currently active (on disc/head).
> So for the main usecase you have the version of a module redundant (a lot!)
> causing lots of maintenance overhead, that might be covered by release-plugin
> but might be not (in my case and there are others as well).
> Following the principle "Conventions over Configuration", a coming version of maven should allow
> to omit the version of a dependency if a pom.xml is loaded for a build (NOT from repository)
> AND the reactor contains a module that has the same groupId and artifactId. In that
> case maven will behave as if the version was declared in the pom.xml with the version-value of
> the module in the reactor. In any other case maven will fail.
> The feature can be combined with MNG-2576 so that it also makes sense if just a single
> module or a sub-tree of the project is to be build.
> Additionally the ArtifactInstaller and ArtifactDeployer have to guarantee, that when the pom.xml
> is installed or deployed, that the omitted version(s) are automatically filled in.
> This feature will therefore be 100% compatible with older versions of maven and will never
> be visible in the repository. If a pom is loaded from any repository (including local repo)
> maven should NOT accept it in order to avoid accidental usage or even miss usage of this feature.
> Besides it is just an option that would NOT hurt anybody not interested in the feature.
> But for those that get crazy maintaining large projects and for some reason do NOT follow
> the philosophy of release-plugin, this feature would bring final freedom!



--
This message was sent by Atlassian JIRA
(v6.1.6#6162)