You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Michael Osipov (Jira)" <ji...@apache.org> on 2020/01/15 13:26:00 UTC
[jira] [Commented] (MNG-6848) Ci Friendly builds broke with 3.6.2
[ https://issues.apache.org/jira/browse/MNG-6848?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17015956#comment-17015956 ]
Michael Osipov commented on MNG-6848:
-------------------------------------
Can you try to bisect between the last good version and the broken one?
> Ci Friendly builds broke with 3.6.2
> -----------------------------------
>
> Key: MNG-6848
> URL: https://issues.apache.org/jira/browse/MNG-6848
> Project: Maven
> Issue Type: Bug
> Affects Versions: 3.6.2
> Reporter: Patrick Barry
> Priority: Major
>
> We currently use ci friendly versions introduced in 3.5.0
> [https://maven.apache.org/docs/3.5.0/release-notes.html] Using of CI friendly versions via ${revision}, ${sha1} and/or ${changelist} has been fixed MNG-6057, MNG-6090 and MNG-5895. It is very important to know if you are using the previously named properties for a version in your pom you have to use flatten-maven-plugin if you like to do an mvn install or mvn deploy more details can be found at Maven CI Friendly Versions.
>
> Our parent pom are defined with the following version attributes:
> {code:java}
> <version>${version}${revision}</version>
> <packaging>pom</packaging>
> <groupId>com.group</groupId>
> <artifactId>my-proj</artifactId>
> <properties>
> <version>0.0.1</version>
> <revision>-SNAPSHOT</revision>
> </properties>
> {code}
> and then on our build machine, we mvn install -Drevision=<buildnumber>
> our sub-modules inherit the version from parent like this:
> {code:java}
> <parent>
> <groupId>com.group</groupId>
> <artifactId>my-proj</artifactId>
> <!--suppress MavenPropertyInParent -->
> <version>${version}${revision}</version>
> <relativePath>..</relativePath>
> </parent>
> {code}
> This allows us to only have to define the version in one spot and all sub-modules will stay in sync with parent.
> This generated a warning but still worked until 3.6.2
> {noformat}
> 15:56:14 [WARNING] Some problems were encountered while building the effective model for com.group:little-proj:jar:2.0.0.48015:56:14 [WARNING] 'version' contains an expression but should be a constant. @ com.group:my-proj:${version}${revision}, /var/build/workspace/project/pom.xml, line 17, column 14{noformat}
> is now...
> {noformat}
> 15:54:12 [ERROR] 'dependencies.dependency.version' for com.group:little-proj:jar is missing. @ com.group:test-proj:${version}${revision}, /var/build/workspace/test/./test-proj/pom.xml, line 89, column 22{noformat}
> we use flatten plugin
> {code:java}
> <plugin>
> <groupId>org.codehaus.mojo</groupId>
> <artifactId>flatten-maven-plugin</artifactId>
> <version>1.1.0</version>
> <executions>
> <execution>
> <id>flatten</id>
> <phase>process-resources</phase>
> <goals>
> <goal>flatten</goal>
> </goals>
> <configuration>
> <updatePomFile>true</updatePomFile>
> <flattenMode>resolveCiFriendliesOnly</flattenMode>
> </configuration>
> </execution>
> <execution>
> <id>flatten.clean</id>
> <phase>clean</phase>
> <goals>
> <goal>clean</goal>
> </goals>
> </execution>
> </executions>
> <configuration>
> <updatePomFile>true</updatePomFile>
> <flattenMode>resolveCiFriendliesOnly</flattenMode>
> </configuration>
> </plugin>{code}
> If this is not the proper way to use Ci-Friendly versions, what is?
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)