Skip to main content
Version: 8.4.x

Elastic Path Maven Profiles

Maven build profiles are sets of configuration settings for building your software in different environments.

For example, if you have tomcat-developer as an active profile, Maven builds your projects according to the tomcat-developer settings, which in this case builds your web applications into a deployable Tomcat WAR.

Elastic Path defines a number of build profiles in commerce-engine/pom.xml so you can build and deploy your Self-Managed Commerce platform on different application servers and databases. You can activate or deactivate the build profiles in your Maven settings.xml file that is located in your .m2 directory.

Application Server Profiles​

The application server profiles are used to configure the type of WAR file generated by Maven. Choose the appropriate profile for your server.

  • tomcat-developer

    Tomcat WAR with HTTP port 8080 and HTTPS port 8443

Additional profiles can be used to modify the Tomcat ports for development:

Changing Profiles

If you switch application server profiles as you are developing, you must re-populate your database with the settings associated with these profiles

Database Profiles​

The database server profiles are used to configure the database the Elastic Path platform uses. Choose the appropriate profile for your database system.

  • mysql-dev-db - MySQL Database
  • postgresql-dev-db - PostgreSQL Database
  • oracle-dev-db - Oracle Database

Code Compliance Profiles​

The code compliance profiles control the level of code compliance checking.

  • enforce-code-compliance

    Runs PMD and Checkstyle checks. Build fails if there are compliance errors.

  • pass-build-even-if-code-compliance-fails

    Runs PMD and Checkstyle checks. Build passes if there are compliance errors.

  • skip-code-compliance

    Skips all code compliance checks

Packaging Profiles​

Packaging profiles control which packaging projects are in the extensions/packager module.

  • with-deployment-package

    Includes the extensions/packager/ext-deployment-package module, which creates a ZIP file that is used for creating Docker images.

  • with-demo-package

    Includes the extensions/packager/standalone-demo module, which creates a standalone demo ZIP. The standalone demo ZIP contains all necessary components to start up Elastic Path web applications

Default profiles in settings.xml​

The global profiles that are active in the default extensions/maven/settings.xml file are:

  • ep-developer

    Assigns separate ports for each web app. See Running Webapps.

  • tomcat-developer

    Generates Tomcat WARs.

  • mysql-dev-db

    Configures MySQL database.

  • with-oauth2-resource

    Configures Cortex to use OAuth 2.0 authentication.

  • activemq-dev-jms

    Configures JMS (Java Messaging Service) to use ActiveMQ broker on port 61616