You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Philippe Cloutier (Jira)" <ji...@apache.org> on 2023/03/06 23:11:00 UTC

[jira] [Updated] (MNGSITE-515) Profiles not properly specified

     [ https://issues.apache.org/jira/browse/MNGSITE-515?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Philippe Cloutier updated MNGSITE-515:
--------------------------------------
    Description: 
I don't know if an unspecified feature is considered a bug or merely as an issue, but here goes anyway...

The POM Reference does not specify profiles beyond the following:
----
h2. Profiles

A new feature of the POM 4.0 is the ability of a project to change settings depending on the environment where it is being built. A {{profile}} element contains both an optional activation (a profile trigger) and the set of changes to be made to the POM if that profile has been activated. For example, a project built for a test environment may point to a different database than that of the final deployment. Or dependencies may be pulled from different repositories based upon the JDK version used. The elements of profiles are as follows:
  # {color:#000088}<project{color}{color:#000000} {color}{color:#660066}xmlns{color}{color:#666600}={color}{color:#008800}"http://maven.apache.org/POM/4.0.0"{color}{color:#000000} {color}{color:#660066}xmlns:xsi{color}{color:#666600}={color}{color:#008800}"http://www.w3.org/2001/XMLSchema-instance"{color}
 # {color:#000000} {color}{color:#660066}xsi:schemaLocation{color}{color:#666600}={color}{color:#008800}"http://maven.apache.org/POM/4.0.0 [https://maven.apache.org/xsd/maven-4.0.0.xsd]"{color}{color:#000088}>{color}
 # {color:#000000} ...{color}
 # {color:#000000} {color}{color:#000088}<profiles>{color}
 # {color:#000000} {color}{color:#000088}<profile>{color}
 # {color:#000000} {color}{color:#000088}<id>{color}{color:#000000}test{color}{color:#000088}</id>{color}
 # {color:#000000} {color}{color:#000088}<activation>{color}{color:#000000}...{color}{color:#000088}</activation>{color}
 # {color:#000000} {color}{color:#000088}<build>{color}{color:#000000}...{color}{color:#000088}</build>{color}
 # {color:#000000} {color}{color:#000088}<modules>{color}{color:#000000}...{color}{color:#000088}</modules>{color}
 # {color:#000000} {color}{color:#000088}<repositories>{color}{color:#000000}...{color}{color:#000088}</repositories>{color}
 # {color:#000000} {color}{color:#000088}<pluginRepositories>{color}{color:#000000}...{color}{color:#000088}</pluginRepositories>{color}
 # {color:#000000} {color}{color:#000088}<dependencies>{color}{color:#000000}...{color}{color:#000088}</dependencies>{color}
 # {color:#000000} {color}{color:#000088}<reporting>{color}{color:#000000}...{color}{color:#000088}</reporting>{color}
 # {color:#000000} {color}{color:#000088}<dependencyManagement>{color}{color:#000000}...{color}{color:#000088}</dependencyManagement>{color}
 # {color:#000000} {color}{color:#000088}<distributionManagement>{color}{color:#000000}...{color}{color:#000088}</distributionManagement>{color}
 # {color:#000000} {color}{color:#000088}</profile>{color}
 # {color:#000000} {color}{color:#000088}</profiles>{color}
 # {color:#000088}</project>{color}

----
...and the following section about activation.

Several sources including the following indicate that a _profile_ element can also contain a _properties_ element:
 * [https://www.baeldung.com/maven-profiles]
 * [https://stackoverflow.com/questions/35468752/maven-profiles-with-variable-for-properties]
 * [https://mkyong.com/maven/maven-profiles-example/]

This also seems to contradict [the _Profiles in POMs_ section of _Introduction to Build Profiles_|https://maven.apache.org/guides/introduction/introduction-to-profiles.html#profiles-in-poms], although I for one struggle to make sense of:
{quote}<properties> (flag)(not actually available in the main POM, but used behind the scenes)(flag)
{quote}
----
By the way, since profiles can be activated explicitly, the beginning of the _Activation_ subsection is misleading:
{quote}The power of a profile comes from its ability to modify the basic POM only under certain circumstances. Those circumstances are specified via an activation element.
{quote}

  was:
The POM Reference does not specify profiles beyond the following:
----
h2. Profiles

A new feature of the POM 4.0 is the ability of a project to change settings depending on the environment where it is being built. A {{profile}} element contains both an optional activation (a profile trigger) and the set of changes to be made to the POM if that profile has been activated. For example, a project built for a test environment may point to a different database than that of the final deployment. Or dependencies may be pulled from different repositories based upon the JDK version used. The elements of profiles are as follows:
  # {color:#000088}<project{color}{color:#000000} {color}{color:#660066}xmlns{color}{color:#666600}={color}{color:#008800}"http://maven.apache.org/POM/4.0.0"{color}{color:#000000} {color}{color:#660066}xmlns:xsi{color}{color:#666600}={color}{color:#008800}"http://www.w3.org/2001/XMLSchema-instance"{color}
 # {color:#000000} {color}{color:#660066}xsi:schemaLocation{color}{color:#666600}={color}{color:#008800}"http://maven.apache.org/POM/4.0.0 [https://maven.apache.org/xsd/maven-4.0.0.xsd]"{color}{color:#000088}>{color}
 # {color:#000000} ...{color}
 # {color:#000000} {color}{color:#000088}<profiles>{color}
 # {color:#000000} {color}{color:#000088}<profile>{color}
 # {color:#000000} {color}{color:#000088}<id>{color}{color:#000000}test{color}{color:#000088}</id>{color}
 # {color:#000000} {color}{color:#000088}<activation>{color}{color:#000000}...{color}{color:#000088}</activation>{color}
 # {color:#000000} {color}{color:#000088}<build>{color}{color:#000000}...{color}{color:#000088}</build>{color}
 # {color:#000000} {color}{color:#000088}<modules>{color}{color:#000000}...{color}{color:#000088}</modules>{color}
 # {color:#000000} {color}{color:#000088}<repositories>{color}{color:#000000}...{color}{color:#000088}</repositories>{color}
 # {color:#000000} {color}{color:#000088}<pluginRepositories>{color}{color:#000000}...{color}{color:#000088}</pluginRepositories>{color}
 # {color:#000000} {color}{color:#000088}<dependencies>{color}{color:#000000}...{color}{color:#000088}</dependencies>{color}
 # {color:#000000} {color}{color:#000088}<reporting>{color}{color:#000000}...{color}{color:#000088}</reporting>{color}
 # {color:#000000} {color}{color:#000088}<dependencyManagement>{color}{color:#000000}...{color}{color:#000088}</dependencyManagement>{color}
 # {color:#000000} {color}{color:#000088}<distributionManagement>{color}{color:#000000}...{color}{color:#000088}</distributionManagement>{color}
 # {color:#000000} {color}{color:#000088}</profile>{color}
 # {color:#000000} {color}{color:#000088}</profiles>{color}
 # {color:#000088}</project>{color}

----
Several sources including the following indicate that a _profile_ element can also contain a _properties_ element:
 * [https://www.baeldung.com/maven-profiles]
 * [https://stackoverflow.com/questions/35468752/maven-profiles-with-variable-for-properties]
 * [https://mkyong.com/maven/maven-profiles-example/]

This also seems to contradict [the _Profiles in POMs_ section of _Introduction to Build Profiles_|https://maven.apache.org/guides/introduction/introduction-to-profiles.html#profiles-in-poms], although I for one struggle to make sense of:
{quote}<properties> (flag)(not actually available in the main POM, but used behind the scenes)(flag)
{quote}
----
By the way, since profiles can be activated explicitly, the beginning of the _Activation_ subsection is misleading:
{quote}The power of a profile comes from its ability to modify the basic POM only under certain circumstances. Those circumstances are specified via an activation element.
{quote}


> Profiles not properly specified
> -------------------------------
>
>                 Key: MNGSITE-515
>                 URL: https://issues.apache.org/jira/browse/MNGSITE-515
>             Project: Maven Project Web Site
>          Issue Type: Improvement
>            Reporter: Philippe Cloutier
>            Priority: Major
>
> I don't know if an unspecified feature is considered a bug or merely as an issue, but here goes anyway...
> The POM Reference does not specify profiles beyond the following:
> ----
> h2. Profiles
> A new feature of the POM 4.0 is the ability of a project to change settings depending on the environment where it is being built. A {{profile}} element contains both an optional activation (a profile trigger) and the set of changes to be made to the POM if that profile has been activated. For example, a project built for a test environment may point to a different database than that of the final deployment. Or dependencies may be pulled from different repositories based upon the JDK version used. The elements of profiles are as follows:
>   # {color:#000088}<project{color}{color:#000000} {color}{color:#660066}xmlns{color}{color:#666600}={color}{color:#008800}"http://maven.apache.org/POM/4.0.0"{color}{color:#000000} {color}{color:#660066}xmlns:xsi{color}{color:#666600}={color}{color:#008800}"http://www.w3.org/2001/XMLSchema-instance"{color}
>  # {color:#000000} {color}{color:#660066}xsi:schemaLocation{color}{color:#666600}={color}{color:#008800}"http://maven.apache.org/POM/4.0.0 [https://maven.apache.org/xsd/maven-4.0.0.xsd]"{color}{color:#000088}>{color}
>  # {color:#000000} ...{color}
>  # {color:#000000} {color}{color:#000088}<profiles>{color}
>  # {color:#000000} {color}{color:#000088}<profile>{color}
>  # {color:#000000} {color}{color:#000088}<id>{color}{color:#000000}test{color}{color:#000088}</id>{color}
>  # {color:#000000} {color}{color:#000088}<activation>{color}{color:#000000}...{color}{color:#000088}</activation>{color}
>  # {color:#000000} {color}{color:#000088}<build>{color}{color:#000000}...{color}{color:#000088}</build>{color}
>  # {color:#000000} {color}{color:#000088}<modules>{color}{color:#000000}...{color}{color:#000088}</modules>{color}
>  # {color:#000000} {color}{color:#000088}<repositories>{color}{color:#000000}...{color}{color:#000088}</repositories>{color}
>  # {color:#000000} {color}{color:#000088}<pluginRepositories>{color}{color:#000000}...{color}{color:#000088}</pluginRepositories>{color}
>  # {color:#000000} {color}{color:#000088}<dependencies>{color}{color:#000000}...{color}{color:#000088}</dependencies>{color}
>  # {color:#000000} {color}{color:#000088}<reporting>{color}{color:#000000}...{color}{color:#000088}</reporting>{color}
>  # {color:#000000} {color}{color:#000088}<dependencyManagement>{color}{color:#000000}...{color}{color:#000088}</dependencyManagement>{color}
>  # {color:#000000} {color}{color:#000088}<distributionManagement>{color}{color:#000000}...{color}{color:#000088}</distributionManagement>{color}
>  # {color:#000000} {color}{color:#000088}</profile>{color}
>  # {color:#000000} {color}{color:#000088}</profiles>{color}
>  # {color:#000088}</project>{color}
> ----
> ...and the following section about activation.
> Several sources including the following indicate that a _profile_ element can also contain a _properties_ element:
>  * [https://www.baeldung.com/maven-profiles]
>  * [https://stackoverflow.com/questions/35468752/maven-profiles-with-variable-for-properties]
>  * [https://mkyong.com/maven/maven-profiles-example/]
> This also seems to contradict [the _Profiles in POMs_ section of _Introduction to Build Profiles_|https://maven.apache.org/guides/introduction/introduction-to-profiles.html#profiles-in-poms], although I for one struggle to make sense of:
> {quote}<properties> (flag)(not actually available in the main POM, but used behind the scenes)(flag)
> {quote}
> ----
> By the way, since profiles can be activated explicitly, the beginning of the _Activation_ subsection is misleading:
> {quote}The power of a profile comes from its ability to modify the basic POM only under certain circumstances. Those circumstances are specified via an activation element.
> {quote}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)