This is a snippet from my pom.xml. I tried the following, but the profile was not activated.
mvn clean install -Pdev1
mvn clean install -P dev1
When I tried mvn help:active-profiles
no profiles were listed as active.
If I set <activeByDefault>
for dev1
to true
, and run mvn help:active-profiles
, it shows me the profile is activated.
<profile>
<id>dev1</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<systemPropertyVariables>
<env>local</env>
<properties.file>src/test/resources/dev1.properties</properties.file>
</systemPropertyVariables>
<suiteXmlFiles>
<suiteXmlFile>src/test/resources/dev1.testng.xml</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>dev2</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<systemPropertyVariables>
<env>local</env>
<properties.file>src/test/resources/dev2.properties</properties.file>
</systemPropertyVariables>
<suiteXmlFiles>
<suiteXmlFile>src/test/resources/dev2.testng.xml</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>
</plugins>
</build>
</profile>
I am wondering why my profile is not getting activated. Has anyone encountered similar issue?
Both commands are correct :
The problem is most likely not profile activation, but rather the profile not accomplishing what you expect it to.
It is normal that the command :
does not display the profile, because is does not contain
-Pdev1
. You could add it to make the profile appear, but it would be pointless because you would be testing maven itself.What you should do is check the profile behavior by doing the following :
activeByDefault
totrue
in the profile configuration,mvn help:active-profiles
(to make sure it is now always activated, even without-Pdev1
),mvn install
.It should produce the same result as before, and therefore confirm that the problem is the profile not doing what you expect.