You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Esteban Porcelli (JIRA)" <ji...@codehaus.org> on 2014/08/21 16:38:14 UTC

[jira] (MNG-4715) version expression constant

    [ https://jira.codehaus.org/browse/MNG-4715?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=351660#comment-351660 ] 

Esteban Porcelli commented on MNG-4715:
---------------------------------------

We have several big modules/repositories with many branches. Per repository we have one parent pom and 50+ children poms.
This is for a large JEE project (1 million lines of code) that it is delivered to several different clients.

We need to create feature branches, bug fixes, integration branches, release branches etc. We have many versions of the same application deployed to different production environments.

Every time a new branch is created, the version tag in the parent pom and all children poms need to be updated (versions plugin helps).
When these branches need to be merged all these poms cause conflicts and they need to be manually resolved, because some times there are other changes in the poms besides just the version change. It is a major problem for us.

We need to change the version on every branch because we have a continuous integration server that builds every branch and runs regression tests against every branch, therefore the versions must be different per branch.

Being able to keep the new version isolated to one file (the parent pom) really makes sense here. (Child pom inherits version from parent property)

The continuous delivery solution discussed in this issue would not work for us. We need to use SNAPSHOTS as we cannot have every developer build the whole system. Developers need to use artifacts built by Jenkins for their feature branch and they cannot be changing to the last build version they depend on every time a new development build is created.

I hope this scenario pushes the maven team to consider this issue more seriously. This issue and other similar issues have been around for many many years.


> version expression constant
> ---------------------------
>
>                 Key: MNG-4715
>                 URL: https://jira.codehaus.org/browse/MNG-4715
>             Project: Maven
>          Issue Type: Improvement
>          Components: Dependencies, POM
>    Affects Versions: 3.0-alpha-6, 3.0-alpha-7, 3.0-beta-1
>         Environment: eclipse linux xp 
>            Reporter: Faruk
>            Assignee: Jason van Zyl
>            Priority: Critical
>             Fix For: 3.2.4
>
>         Attachments: untitled.JPG
>
>
> early versions, we define modules versions with expressions, and set them to the parent pom, 
> simply;
> {code:xml}
> <properties>
> 		<ibb-core-cache.version>1.0.1</ibb-core-cache.version>
> 		<ibb-core-util.version>1.0.1</ibb-core-util.version>
> </properties>
> {code}
> and then, we give this property to modules pom as expression , 
> {code:xml}
> 	<name>ik-plug</name>
> 	<packaging>jar</packaging>
> 	<version>${ibb-core-util.versionn}</version>
> {code}
> but know , it gives an error you know like this,
> {noformat}
> [WARNING] Some problems were encountered while building the effective model for ibb-parent:ibb-modules-parent:pom:1.0.0
> [WARNING] 'version' contains an expression but should be a constant. @ ibb-parent:ibb-modules-parent:${ibb-core-jars.version}, C:\dev\ibb\workspace\core\ibb-modules-parent\pom.xml
> {noformat}
> but I think that, this enhancement is causes wrong result,
> think that , if we have i project already developing about 3 years, this project has a lot of modules, and this modules have sub modules , and this sub modules already bound to some other modules not define in your pom, but your updates must be affect them, at this situation, developer want to write the existing version numbers with properties to parent pom, and want to manage them like this. at the attach file below , the close projects are belongs to open projects, but they are the different team developing this. I cant force the other developers to cache their versions, I must use this versions as initial step



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