You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Ralf (Jira)" <ji...@apache.org> on 2020/10/22 10:15:00 UTC

[jira] [Comment Edited] (MNG-6727) Using version range in parent and CI Friendly Version fails

    [ https://issues.apache.org/jira/browse/MNG-6727?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17218911#comment-17218911 ] 

Ralf edited comment on MNG-6727 at 10/22/20, 10:14 AM:
-------------------------------------------------------

Yes. "Unfortunately I have to confirm that as well."
 Too much time spend finding out what the issue actually is. Searching the problem in my poms. Both features work fine for themselves. The parent version range and cli friendly versions - but once you combine them - your screwed. I have no real solution :( 
The only work around I found in a multi module project - when I'm not interested in the parent-artifacts anyways - that I set the parent version to a fixed SNAPSHOT like "dev-SNAPSHOT" and only apply the correct ${revision} to the child modules. Not very elegant and not a solution for single module projects...


was (Author: mineralf):
Yes. "Unfortunately I have to confirm that as well."
Too much time spend finding out what the issue actually is. Searching the problem in my poms Both features work fine for themselves. The parent version range and cli friendly versions - but once you combine it your screwed :(

> Using version range in parent and CI Friendly Version fails
> -----------------------------------------------------------
>
>                 Key: MNG-6727
>                 URL: https://issues.apache.org/jira/browse/MNG-6727
>             Project: Maven
>          Issue Type: Bug
>          Components: Inheritance and Interpolation, POM, Reactor and workspace
>    Affects Versions: 3.5.2, 3.6.1, 3.6.2, 3.6.3
>            Reporter: Tom Kiemes
>            Priority: Major
>
> We would like to pass a [version range|https://maven.apache.org/enforcer/enforcer-rules/versionRanges.html] to the parent which should be possible since 3.5.0
> At the same time, we would like to use [CI friendly versions|https://maven.apache.org/maven-ci-friendly.html] for the artifact itself.
> Both on their own work well, but combined they don't.
> {{<?xml version="1.0" encoding="UTF-8"?>}}
>  {{<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" }}{{xsi:schemaLocation="[http://maven.apache.org/POM/4.0.0] [http://maven.apache.org/xsd/maven-4.0.0.xsd]">}}
>  {{  <modelVersion>4.0.0</modelVersion>}}
> {{  <parent>}}
>  {{    <groupId>org.springframework.boot</groupId>}}
>  {{    <artifactId>spring-boot-starter-parent</artifactId>}}
>  {{    <version>[2.1,3.0)</version>}}
>  {{  </parent>}}
> {{  <groupId>com.example</groupId>}}
>  {{  <artifactId>test</artifactId>}}
>  {{  <version>${revision}</version>}}
>  {{  <packaging>pom</packaging>}}
> {{  <properties>}}
>  {{    <revision>0.0.1</revision>}}
>  {{  </properties>}}
>  {{</project>}}
>  
> The resulting error is:
> {{The project com.example:test:${revision} (/Users/d045390/scratch/test.pom) has 1 error}}
> {{[ERROR] Version must be a constant @ line 13, column 12}}
>  
> Changing the version range of the parent to a fixed version e.g. \{{2.1.5.Release}}, building works.
> Changing the artifact version from ${revision} to a fixed version e.g. 0.0.1 without using the {{properties}} works as well.
> So it somehow must be the combination of both features which are actually not really related or am I missing something?
> PS: I left the modules out for abbreviation purpose. The pom itself can still be used to reproduced



--
This message was sent by Atlassian Jira
(v8.3.4#803005)