Contributing to Apache Maven Surefire
Usage of maven-surefire-plugin, maven-failsafe-plugin, maven-surefire-report-plugin
Build the Surefire project using Maven 3.6.3+ and JDK 8+.
-
In order to run tests for a release check during the Vote, the following memory requirements are needed:
On Linux/Unix:
export MAVEN_OPTS="-server -Xmx512m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=384m -XX:+UseG1GC -XX:+UseStringDeduplication -XX:+TieredCompilation -XX:TieredStopAtLevel=1 -XX:SoftRefLRUPolicyMSPerMB=50 -Djava.awt.headless=true"
On Windows:
set MAVEN_OPTS="-server -Xmx256m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=384m -XX:+UseG1GC -XX:+UseStringDeduplication -XX:+TieredCompilation -XX:TieredStopAtLevel=1 -XX:SoftRefLRUPolicyMSPerMB=50 -Djava.awt.headless=true"
-
In order to build and run the tests:
mvn install site site:stage -P reporting,run-its
-
To set up the project in Eclipse IDE or IntelliJ IDEA, please follow these steps:
-
Build module
surefire-shared-utils
with profileide-development
and install it into the local maven repository using this Maven command:mvn install -P ide-development -f surefire-shared-utils/pom.xml
-
Build module
surefire-grouper
in order to generate and compile sources intotarget/generated-sources/javacc
using this Maven command:mvn compile -f surefire-grouper/pom.xml
-
In Eclipse, select File > Import ... > Maven Project
- Select all projects (poms) except
surefire-shared-utils
, enter profileide-development
in Advanced -> Profiles - Check module
surefire-grouper
has source foldertarget/generated-sources/javacc
. If not, add it manually in the module's project properties
- Select all projects (poms) except
-
In IntelliJ, select Maven > Profiles and check
ide-development
-
See https://maven.apache.org/developers/website/deploy-component-reference-documentation.html