apache / apache/maven

[MNG-5900] early interpolation: support ${this.*} as expression

Open
#7,763 18 comments 0 reactions 0 assignees View on GitHub
enhancement priority:major
Dominant language
Java
Stars
5.3k
Forks
3.1k
Avg merge
20h 40m
Merged PRs (30d)
275

Description

**[Robert Scholte](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=rfscholte)** opened **[MNG-5900](https://issues.apache.org/jira/browse/MNG-5900?redirect=false)** and commented

Right now we have ${project.\*} which always interpolates values based on the final project: "classical" interpolation is "late" interpolation. So it is not possible that parent poms can lock values, ie avoid child poms override. By adding ${this} for "early" interpolation, it will be possible to have intermediate interpolation.

If a pomfile depends on a parent, that parent will first resolve all ${this.\*} values for itself. Once the fully inherited pom is there, all ${project.\*} will be resolved.

---

**Issue Links:**
- [MNG-6009](https://issues.apache.org/jira/browse/MNG-6009) Can avoid the env property {project.version} in parent pom be overrided by the child pom?
(_**"is duplicated by"**_)
- [DOXIASITETOOLS-158](https://issues.apache.org/jira/browse/DOXIASITETOOLS-158) early interpolation: support ${this.*} as expression in site.xml interpolation

- [MNG-5890](https://issues.apache.org/jira/browse/MNG-5890) In reactor projects, having a "root" counterpart to "project" properties would be useful

- [MNG-5763](https://issues.apache.org/jira/browse/MNG-5763) Incorrect resolution of ${project.groupId} for POM imports with different groupIds

**Remote Links:**
- [Page
](https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=65875544)

5 votes, 10 watchers

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.