Philippe Cloutier created MNGSITE-515:
-----------------------------------------
Summary: 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
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}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)