[ https://issues.apache.org/jira/browse/MNG-7038?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17714077#comment-17714077 ]
ASF GitHub Bot commented on MNG-7038: ------------------------------------- gnodet commented on code in PR #1061: URL: https://github.com/apache/maven/pull/1061#discussion_r1171253490 ########## maven-model-builder/src/site/apt/index.apt: ########## @@ -183,13 +183,17 @@ Maven Model Builder | <<<project.baseUri>>>\ <<<pom.baseUri>>> (<deprecated>) | the directory containing the <<<pom.xml>>> file as URI | <<<$\{project.baseUri\}>>> | *----+------+------+ +| <<<project.rootdir>>> | the project's root directory (containing a <<<.mvn>>> directory or with the <<<root="true">>> xml attribute | <<<$\{project.rootdir\}>>> | +*----+------+------+ | <<<build.timestamp>>>\ <<<maven.build.timestamp>>> | the UTC timestamp of build start, in <<<yyyy-MM-dd'T'HH:mm:ss'Z'>>> default format, which can be overridden with <<<maven.build.timestamp.format>>> POM property | <<<$\{maven.build.timestamp\}>>> | *----+------+------+ | <<<*>>> | user properties, set from CLI with <<<-Dproperty=value>>> | <<<$\{skipTests\}>>> | *----+------+------+ | <<<*>>> | model properties, such as project properties set in the pom | <<<$\{any.key\}>>> | *----+------+------+ +| <<<session.rootdir>>> | the directory containing the root <<<pom.xml>>> file, identified by the existence of a <<<.mvn>>> child directory | <<<$\{session.rootdir\}>>> | +*----+------+------+ Review Comment: `session.topdir` depends on the current directory so it should not be used during profile activation or model interpolation. The `session.rootdir` property depends on `session.topdir` and thus should not be made available either. Those two properties are available for profile injection, but this page is about the model building phase, which should be limited to `project.rootDirectory`. > Introduce public property to point to a root directory of (multi-module) > project > -------------------------------------------------------------------------------- > > Key: MNG-7038 > URL: https://issues.apache.org/jira/browse/MNG-7038 > Project: Maven > Issue Type: Improvement > Reporter: Envious Guest > Assignee: Guillaume Nodet > Priority: Major > Fix For: 4.0.0-alpha-6 > > > This is a request to expose a property *maven.multiModuleProjectDirectory* > which is currently internal (or introduce a brand new one with analogous > functionality). > * For a single-module project, its value should be same as *project.basedir* > * For multi-module project, its value should point to a project.basedir of a > root module > Example: > multi-module // located at /home/me/sources > +- module-a > +- module B > Sample multi-module/pom.xml: > {{<project>}} > {{ <parent>}} > {{ <groupId>com.acme</groupId>}} > {{ <artifactId>corp-parent</artifactId>}} > {{ <version>1.0.0-RELEASE</version>}} > {{ </parent>}} > {{ <groupId>com.acme</groupId>}} > {{ <artifactId>multi-module</artifactId>}} > {{ <version>0.5.2-SNAPSHOT</version>}} > {{ <modules>}} > {{ <module>module-a</module>}} > {{ <module>module-b</module>}} > {{ </modules>}} > {{</project>}} > The property requested should return /home/me/sources/multi-module, > regardless of whether it's referenced in any of the child modules (module-a, > module-b) or in multi-module. > Note that multi-module itself has parent (e.g. installed in a local > repository), so the new property should be smart enough to detect it and > still point to /home/me/sources/multi-module instead of the local repository > where the corp-parent is installed. > The use-case for such a property could be to have a directory for combined > report of static analysis tools. Typical example - jacoco combined coverage > reports. -- This message was sent by Atlassian Jira (v8.20.10#820010)