You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Jörg Hohwiller (JIRA)" <ji...@codehaus.org> on 2009/05/15 22:31:44 UTC
[jira] Commented: (MNG-4161) possibility to omit version in
dependency of same project (and fill in on install/deploy)
[ http://jira.codehaus.org/browse/MNG-4161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=176678#action_176678 ]
Jörg Hohwiller commented on MNG-4161:
-------------------------------------
Just to give an overview of the toppic:
* MNG-624 - automatic parent versioning
* MNG-2412 - global variable filtering of pom.xml for parent and
sub module pom.xml files is not working when deploying to a repository.
* MNG-2446 - parent Pom properties not resolved for module dependencies
* MNG-2971 - Variables are not replaced into installed pom file
* MNG-3057 - properties not expanded in generated POMs when building A/B/C nested projects
* MNG-3782 - [regression] Variable substition not performed in transitive dependency using value from active profile
* MNG-4161 - possibility to omit version in dependency of same project (and fill in on install/deploy)
* MARTIFACT-32 - Maven does not expand expressions while installing artifacts locally
* MINSTALL-50 - provide property filtering on .pom files placed in local repo
Quite impressive list. So there seems to be a high demand in this toppic.
Maybe we should bring some things together.
> possibility to omit version in dependency of same project (and fill in on install/deploy)
> -----------------------------------------------------------------------------------------
>
> Key: MNG-4161
> URL: http://jira.codehaus.org/browse/MNG-4161
> Project: Maven 2
> 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 is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira