You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Andreas Sewe (JIRA)" <ji...@apache.org> on 2016/03/11 14:04:48 UTC

[jira] [Commented] (MNG-5951) add an option to avoid path addition to inherited URLs

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

Andreas Sewe commented on MNG-5951:
-----------------------------------

{quote}
I expect maven-core to be changed so that I can turn on/off the automatic calculation of child URLs as an option which is by default on (current behaviour so nothing will change unless configured explicitly).
{quote}

Instead of a boolean on/off switch, I would suggest the following attribute that controls how a value is *transformed* when it is inherited:

{code:xml}
  <url inherit="${inherited}/{project.artifactId}">http://example/parent</url>
{code}

The rules would be like this:

If the element's value is given, use its value as-is

If the element's value is not given, inherit from the parent by applying the transformation in the parent element's inherit attribute. Variables like {{project.artifactId}} are evaluated w.r.t. to the child (as if they were element content) and the special {{inherited}} variable is evaluated to the element content of the parent POM.

A child of the above example POM would thus has an {{<url>}} of {{http://example/parent/child}}; in other words, the above attribute value just describes the current behaviour (and thus should be the default for {{<url>}}).

> add an option to avoid path addition to inherited URLs
> ------------------------------------------------------
>
>                 Key: MNG-5951
>                 URL: https://issues.apache.org/jira/browse/MNG-5951
>             Project: Maven
>          Issue Type: Improvement
>          Components: Inheritance and Interpolation
>    Affects Versions: 3.0.5, 3.1.1, 3.2.5, 3.3.9
>            Reporter: Jörg Sesterhenn
>             Fix For: waiting-for-feedback, 3.4.0
>
>         Attachments: MNG-5951.zip
>
>
> What I am trying to achieve is 
> the definition of a project.url in a parent pom 
> in a way that all children inherit a url ending with 
> {code}
> ${project.groupId}/${project.artifactId}/${project.version}/ 
> {code}
> in order to be able to publish sites of all artifacts in all versions in parallel
> without having to redefine the url in every child pom.
> This is currently not working as expected in maven due to the default child urls calculation which leads to urls that add up parent urls like 
> http://my.domain.de/sites/de.enterprise.calculatorsGroupId/calculator-artifactID/1.0.0-SNAPSHOT/internetAppParentPOM/calculatorParentPom/calculator-artifactID/
> The part *"internetAppParentPOM/calculatorParentPom/"* is added by automatic child url calculation (those are the artifactIds of all parent poms beneath our enterprise parent pom where the url is defined) and *is expexted to not be there at all*. The repeated artifactID at the end of the url is superfluous as well but tollerable.
> I expect maven-core to be changed so that I can turn on/off the automatic calculation of child URLs as an option which is by default on (current behaviour so nothing will change unless configured explicitly).
> See the discussion in MSITE-672. 
> As this can not be done in the maven-site-plugin there needs to be a change in Maven itself (core), in Maven Model Builder, ie the way effective model is calculated, and more precisely in the inheritance step: http://maven.apache.org/ref/current/maven-model-builder/.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)