Profiles
Profiles provide the if-else of the POM. It is basically aimed towards configuring your build depending on the properties. A couple of the usual properties used are the JDK, the OS ( Operating System ). Furthermore, Profiles can be activated depending on whether a particular file exists or not.
Generic Property Activation
JDK Activation
OS Activation
To configure the activation via the operating system, you can specify at least one out of four (4) things - name, family, architecture, and version.
The Profile OS Activation part looks like this
For the family, architecture, and version, this is checked by comparing these values against System.getProperties( "os.name" ), System.getProperties( "os.arch" ), System.getProperties( "os.version" ) respectively. Thus, the allowed values for these tags depends on what are allowed in those System properties.
However, for the family, there is a list of possible family values you can enter.
Family Value |
Condition for Activation |
|---|---|
windows |
if OS name contains the word "windows" |
os/2 |
if OS name contains the word "os/2" |
netware |
if OS name contains the word "netware" |
dos |
if OS family is not "netware", and its path separator is ";" |
mac |
if OS name contains the word "mac" |
tandem |
if OS name contains the word "nonstop_kernel" |
unix |
if OS family is not "openvms" and not "mac" which names does not end with "X", and its path separator is ":" |
win9x |
is OS family is "windows" and OS name contains "95", "98", "me", or "ce" |
z/os |
if OS name contains the word "z/os" or "os/390" |
os/400 |
if OS name contains the word "os/400" |
openvms |
if OS name contains the word "openvms" |
File Activation
Others
Negation
Prepend "!".
Active by Default
Set to true to activate by default
