Elastic Path Maven Commands
Elastic Path Maven Commands
All Elastic Path Commerce modules are Maven modules with configurable pom.xml files. The POM files contain configuration details and dependency information required for building, installing, cleaning, packaging, and running modules in development and CI environments.
This page lists some of the commonly used Maven commands with Elastic Path Commerce.
When running Maven commands you may experience a java.lang.OutOfMemoryError: unable to create new native thread error. To solve this issue increase the memory setting in the MVN_OPTS environment variable.
Running Webapps
To run a web application as a standalone process, navigate to the webapp module (e.g. extensions/cortex/ext-cortex-webapp and execute one of these commands:
Goal | Command |
---|---|
Run webapp without debugging | mvn clean tomcat8:run-war |
Run webapp with external debugging on port 8000 | mvnDebug clean tomcat8:run-war |
To run web applications as separate processes, the ep-developers profile must be active. For more information see Elastic Path Maven Profiles.
The ep-developers profile assigns the following web application ports:
Clearing Configuration Files
Goal | Command |
---|---|
Deletes the user's home/ep/conf directory, and copies configuration files from commerce-extensions/database/ext-data/srcnain/resources/environments/dev into the user's clean home/ep/conf directory. | mvn clean install -Preset-conf |
Overrides any files in the user's home/ep/conf directory with configuration files from commerce-extensions/database/ext-data/srcnain/resources/environments/dev directory. | mvn clean install -Pupdate-conf |
Importing and Exporting Data Using the Import-Export Tool
Testing and Code Compliance
Goal | Command |
---|---|
Run an individual JUnit test | mvn install -Dtest=<TestClassName> |
Run an individual JUnit Integration test | mvn install -Dit=<TestClassName> |
Run PMD to check for common programming flaws | mvn pmd:check |
Run Checkstyle to validate code formatting and style | mvn checkstyle:check |
Check for licensing compliance | mvn licensing:check |
Common Build Sequences
As a development best practice, you may want to script common build sequences. Here are some examples:
Goal | Commands |
---|---|
Change ep-core logic, update the ext-commerce-engine-wrapper, then debug in Cortex | mvn clean install -f commerce-engine/core/ep-core/pom.xml mvn clean install -f extensions/cortex/ext-commerce-engine-wrapper/pom.xml mvnDebug clean tomcat8:run-war -f extensions/cortex/ext-cortex-webapp/pom.xml |
Change ext-core logic, then debug in Cortex |
mvn clean install -f extensions/core/ext-core/pom.xml mvnDebug clean tomcat8:run-war -f extensions/cortex/ext-cortex-webapp/pom.xml |