Skip to main content
Version: 8.8.x

Elastic Path Maven Commands

All Self-Managed 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 Self-Managed Commerce.

note

When running Maven commands you may experience a java.lang.OutOfMemoryError: GC overhead limit exceeded error. To solve this issue increase the memory setting in the MAVEN_OPTS environment variable.

Building Source Code​

To build the Self-Managed Commerce source, navigate to the source code root and execute one of these commands in the command line:

CommandDescriptionUse CaseApproximate Build Time on 2021 MacBook M1 Pro
mvn clean installBuild all modules and run all tests.Not recommended for local builds; normally only be run in build pipelines.90+ minutes
mvn clean install -DskipAllTestsBuild all modules, skipping all tests and static analysis checks.Building source code that is in a known good state so you can run the webapps.9 minutes
mvn clean install -DskipAllTests -T0.5CBuild all modules using multiple threads, skipping all tests and static analysis checks.Building source code that is in a known good state so you can run the webapps.5 minutes
mvn clean install -DskipSlowTestsBuild all modules and run static analysis checks and unit tests, skipping Integration tests and Cucumber tests.Building source code that has been recently changed to verify that most issues are resolved.19 minutes
mvnmin clean install -DskipSlowTestsBuild modified modules and their dependents and run static analysis checks and unit tests, skipping Integration tests and Cucumber tests. You will need to install Maven Minimal first.Building source code that has been recently changed to verify that most issues are resolved.Depends on changes

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:

  • Run webapp without debugging

    mvn clean package cargo:run
  • Run webapp with external debugging on port 8000

    mvn clean package cargo:run -Pdebug
note

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:

  • 8081 - Commerce Manager
  • 8082 - Search server
  • 8083 - Integration server
  • 8084 - Batch server
  • 9080 - Cortex and Cortex Studio

Running ActiveMQ​

The ActiveMQ broker can either be installed as a service on your computer or run from the command line from extensions/activemq-broker module.

  • Run ActiveMQ broker from the command line

    mvn clean package cargo:run

Populating the Database​

Data population commands are run from the extensions/database module.

  • Delete database schema, then create and populate the database

    mvn clean install -Preset-db
  • Update the database

    mvn clean install -Pupdate-db

Updating Configuration Files​

The following commands are run from the extensions/database module to update configuration files in your local ${user.home}/ep/conf directory. The configuration files are copied from the these locations in the extensions/database/ext-data module.

  • environments/default/files/conf which contains default configuration files that apply to all environments

  • environments/local/files/conf which contains configuration files that apply only to the local development environment

    Duplicate files present in the default environment are overwritten by those in the local environment.

  • Delete your local ${user.home}/ep/conf directory and copy configuration files from the default and local environments

    mvn clean install -Preset-conf
  • Copy configuration files to your ${user.home}/ep/conf directory from the default and local environments, overwriting existing files

    mvn clean install -Pupdate-conf

Importing and Exporting Data Using the Import-Export Tool​

For more information, see the Import-Export Tool Guide.

  • Import data from the target directory

    mvn package -Pdo-import
  • Export data to the target directory

    mvn clean package -Pdo-export

Testing and Code Compliance​

See Running Individual Tests for information about executing tests locally.