<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
		 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<name>Flowable</name>
	<description>BPM and workflow engine</description>
	<groupId>org.flowable</groupId>
	<artifactId>flowable-root</artifactId>

	<packaging>pom</packaging>
	<version>7.0.0</version>
	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<distributionManagementSnapshotsUrl>https://oss.sonatype.org/content/repositories/snapshots/</distributionManagementSnapshotsUrl>
		<jdk.version>17</jdk.version>
		<!-- When updating one spring version, make sure that all of them are updated to their latest compatible versions -->
		<spring.boot.version>3.1.3</spring.boot.version>
		<spring.framework.version>6.0.12</spring.framework.version>
		<spring.security.version>6.1.4</spring.security.version>
		<spring.amqp.version>3.0.8</spring.amqp.version>
		<spring.kafka.version>3.0.10</spring.kafka.version>
		<spring.ldap.version>3.1.1</spring.ldap.version>
		<reactor-netty.version>1.1.8</reactor-netty.version>
		<jackson.version>2.15.2</jackson.version>
		<jakarta-jms.version>3.1.0</jakarta-jms.version>
        <camel.version>4.0.0</camel.version>
		<cxf.version>4.0.2</cxf.version>
		<slf4j.version>2.0.7</slf4j.version>
		<groovy.version>4.0.14</groovy.version>
		<jib-maven-plugin.version>3.3.1</jib-maven-plugin.version>

		<junit.version>4.13.2</junit.version>
		<junit.jupiter.version>5.9.3</junit.jupiter.version>
		<hikari.version>5.0.1</hikari.version>
		<maven.deploy.plugin.version>3.1.1</maven.deploy.plugin.version>
		<maven.resources.plugin.version>3.3.0</maven.resources.plugin.version>
		<mockito.version>5.3.1</mockito.version>
		<testcontainers.version>1.18.3</testcontainers.version>
		<artemis.version>2.28.0</artemis.version>

		<oracle.jdbc.version>21.9.0.0</oracle.jdbc.version>
		<oracle.jdbc.artifact>ojdbc8</oracle.jdbc.artifact>

        <!-- JVM params for test execution -->
		<argLine>-Duser.language=en -Dfile.encoding=UTF-8 -XX:+UseParallelGC</argLine>

		<!-- OSGi bundles properties -->
		<flowable.artifact />
		<flowable.osgi.import.flowable.version>version="[$(version;==;${flowable.osgi.version.clean}),$(version;=+;${flowable.osgi.version.clean}))"</flowable.osgi.import.flowable.version>
		<flowable.osgi.import.strict.version>version="[$(version;===;${flowable.osgi.version.clean}),$(version;==+;${flowable.osgi.version.clean}))"</flowable.osgi.import.strict.version>
		<flowable.osgi.import.default.version>[$(version;==;$(@)),$(version;+;$(@)))</flowable.osgi.import.default.version>
		<flowable.osgi.import.defaults>
		</flowable.osgi.import.defaults>
		<flowable.osgi.import.before.defaults />
		<flowable.osgi.import.additional />
		<flowable.osgi.export.additional />
		<flowable.osgi.import.pkg>
			org.flowable.*;${flowable.osgi.import.flowable.version},
			${flowable.osgi.import.before.defaults},
			${flowable.osgi.import.defaults},
			${flowable.osgi.import.additional},
			*
		</flowable.osgi.import.pkg>
		<flowable.osgi.activator />
		<flowable.osgi.failok>false</flowable.osgi.failok>
		<flowable.osgi.export>${flowable.osgi.export.pkg};${flowable.osgi.version};-noimport:=true</flowable.osgi.export>
		<!-- <flowable.osgi.export.pkg>!*.impl;${flowable.artifact}*</flowable.osgi.export.pkg>
			<flowable.osgi.private.pkg>${flowable.artifact}*.impl</flowable.osgi.private.pkg> -->
		<flowable.osgi.export.pkg>
			${flowable.artifact}*,
			${flowable.osgi.export.additional}
		</flowable.osgi.export.pkg>
		<flowable.osgi.private.pkg></flowable.osgi.private.pkg>
		<flowable.osgi.version>version=${project.version}</flowable.osgi.version>
		<flowable.osgi.split.pkg>-split-package:=first</flowable.osgi.split.pkg>
		<flowable.osgi.import>${flowable.osgi.import.pkg}</flowable.osgi.import>
		<flowable.osgi.dynamic />
		<flowable.osgi.symbolic.name>${flowable.artifact}</flowable.osgi.symbolic.name>
		<flowable.osgi.exclude.dependencies>false</flowable.osgi.exclude.dependencies>
		<flowable.osgi.remove.headers>Ignore-Package,Include-Resource,Private-Package,Bundle-DocURL</flowable.osgi.remove.headers>
		<flowable.osgi.include.resource>{maven-resources}</flowable.osgi.include.resource>
		<flowable.osgi.embed></flowable.osgi.embed>
	</properties>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.flowable</groupId>
				<artifactId>flowable-bom</artifactId>
				<version>${project.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>com.h2database</groupId>
				<artifactId>h2</artifactId>
				<version>2.1.214</version>
			</dependency>
			<!-- Logging -->
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-api</artifactId>
				<version>${slf4j.version}</version>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>jcl-over-slf4j</artifactId>
				<version>${slf4j.version}</version>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-log4j12</artifactId>
				<version>${slf4j.version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.commons</groupId>
				<artifactId>commons-lang3</artifactId>
				<version>3.12.0</version>
			</dependency>
			<dependency>
				<groupId>commons-io</groupId>
				<artifactId>commons-io</artifactId>
				<version>2.11.0</version>
			</dependency>
			<dependency>
			    <groupId>commons-codec</groupId>
			    <artifactId>commons-codec</artifactId>
			    <version>1.15</version>
			</dependency>
			<dependency>
				<groupId>org.apache.httpcomponents</groupId>
				<artifactId>httpclient</artifactId>
				<version>4.5.14</version>
			</dependency>
			<dependency>
				<groupId>org.apache.httpcomponents</groupId>
				<artifactId>httpcore</artifactId>
				<version>4.4.15</version>
			</dependency>
			<dependency>
				<groupId>org.apache.httpcomponents</groupId>
				<artifactId>httpmime</artifactId>
				<version>4.5.13</version>
			</dependency>
			<dependency>
				<groupId>org.apache.httpcomponents.client5</groupId>
				<artifactId>httpclient5</artifactId>
				<version>5.1.3</version>
			</dependency>
			<dependency>
				<groupId>com.oracle.database.jdbc</groupId>
				<artifactId>${oracle.jdbc.artifact}</artifactId>
				<version>${oracle.jdbc.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>jakarta.xml.bind</groupId>
				<artifactId>jakarta.xml.bind-api</artifactId>
				<version>4.0.0</version>
			</dependency>
			<dependency>
				<groupId>org.glassfish.jaxb</groupId>
				<artifactId>jaxb-runtime</artifactId>
				<version>4.0.2</version>
			</dependency>
			<dependency>
				<groupId>org.glassfish.jaxb</groupId>
				<artifactId>jaxb-xjc</artifactId>
				<version>4.0.2</version>
			</dependency>
			<dependency>
				<groupId>jakarta.servlet</groupId>
				<artifactId>jakarta.servlet-api</artifactId>
				<version>6.0.0</version>
			</dependency>
			<dependency>
				<groupId>jakarta.inject</groupId>
				<artifactId>jakarta.inject-api</artifactId>
				<version>2.0.1</version>
			</dependency>
			<dependency>
				<groupId>org.eclipse.angus</groupId>
				<artifactId>angus-mail</artifactId>
				<version>2.0.2</version>
			</dependency>
			<dependency>
				<groupId>jakarta.persistence</groupId>
				<artifactId>jakarta.persistence-api</artifactId>
				<version>3.1.0</version>
			</dependency>
			<dependency>
				<groupId>jakarta.enterprise.concurrent</groupId>
				<artifactId>jakarta.enterprise.concurrent-api</artifactId>
				<version>3.0.2</version>
			</dependency>
			<dependency>
				<groupId>jakarta.enterprise</groupId>
				<artifactId>jakarta.enterprise.cdi-api</artifactId>
				<version>4.0.1</version>
			</dependency>
			<dependency>
				<groupId>io.swagger</groupId>
				<artifactId>swagger-annotations</artifactId>
				<version>1.6.2</version>
			</dependency>
			<dependency>
				<groupId>io.swagger</groupId>
				<artifactId>swagger-models</artifactId>
				<version>1.6.2</version>
			</dependency>
			<dependency>
				<groupId>org.junit</groupId>
				<artifactId>junit-bom</artifactId>
				<version>${junit.jupiter.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>junit</groupId>
				<artifactId>junit</artifactId>
				<version>${junit.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>com.zaxxer</groupId>
				<artifactId>HikariCP</artifactId>
				<version>${hikari.version}</version>
			</dependency>
			<dependency>
				<groupId>org.testcontainers</groupId>
				<artifactId>testcontainers-bom</artifactId>
				<version>${testcontainers.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>

			<dependency>
				<groupId>com.mysql</groupId>
				<artifactId>mysql-connector-j</artifactId>
				<version>8.0.32</version>
			</dependency>
			<dependency>
				<groupId>org.mariadb.jdbc</groupId>
				<artifactId>mariadb-java-client</artifactId>
				<version>2.7.5</version>
			</dependency>
			<dependency>
				<groupId>com.ibm.db2</groupId>
				<artifactId>jcc</artifactId>
				<version>11.5.8.0</version>
			</dependency>
			<!-- Web service -->
			<dependency>
				<groupId>org.apache.cxf</groupId>
				<artifactId>cxf-bom</artifactId>
				<version>${cxf.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>jakarta.transaction</groupId>
				<artifactId>jakarta.transaction-api</artifactId>
				<version>2.0.1</version>
			</dependency>
			<dependency>
				<groupId>org.hibernate.orm</groupId>
				<artifactId>hibernate-core</artifactId>
				<version>6.2.7.Final</version>
			</dependency>
			<dependency>
				<groupId>org.apache.groovy</groupId>
				<artifactId>groovy-jsr223</artifactId>
				<version>${groovy.version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.groovy</groupId>
				<artifactId>groovy</artifactId>
				<version>${groovy.version}</version>
			</dependency>
			<dependency>
				<groupId>org.drools</groupId>
				<artifactId>drools-bom</artifactId>
				<version>7.63.0.Final</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.mybatis</groupId>
				<artifactId>mybatis</artifactId>
				<version>3.5.11</version>
			</dependency>
			<dependency>
              <groupId>org.mybatis</groupId>
              <artifactId>mybatis-spring</artifactId>
              <version>3.0.0</version>
            </dependency>
			<dependency>
				<groupId>org.mockito</groupId>
				<artifactId>mockito-core</artifactId>
				<version>${mockito.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.mockito</groupId>
				<artifactId>mockito-junit-jupiter</artifactId>
				<version>${mockito.version}</version>
			</dependency>

			<dependency>
				<groupId>org.openjdk.nashorn</groupId>
				<artifactId>nashorn-core</artifactId>
				<version>15.4</version>
			</dependency>

			<dependency>
				<groupId>org.osgi</groupId>
				<artifactId>osgi.core</artifactId>
				<version>8.0.0</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.apache.felix</groupId>
				<artifactId>org.apache.felix.fileinstall</artifactId>
				<version>3.7.4</version>
				<optional>true</optional>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-jdk14</artifactId>
				<version>${slf4j.version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework</groupId>
				<artifactId>spring-framework-bom</artifactId>
				<version>${spring.framework.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.springframework.amqp</groupId>
				<artifactId>spring-rabbit</artifactId>
				<version>${spring.amqp.version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework.kafka</groupId>
				<artifactId>spring-kafka</artifactId>
				<version>${spring.kafka.version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework.ldap</groupId>
				<artifactId>spring-ldap-core</artifactId>
				<version>${spring.ldap.version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework.security</groupId>
				<artifactId>spring-security-bom</artifactId>
				<version>${spring.security.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>com.github.davidmoten</groupId>
				<artifactId>subethasmtp</artifactId>
				<version>6.0.6</version>
			</dependency>
			<dependency>
				<groupId>org.liquibase</groupId>
				<artifactId>liquibase-core</artifactId>
				<version>4.9.0</version>
				<exclusions>
					<exclusion>
						<groupId>javax.xml.bind</groupId>
						<artifactId>jaxb-api</artifactId>
					</exclusion>
				</exclusions>
			</dependency>
			<dependency>
				<groupId>org.hsqldb</groupId>
				<artifactId>hsqldb</artifactId>
				<version>2.7.2</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.postgresql</groupId>
				<artifactId>postgresql</artifactId>
				<version>42.5.4</version>
			</dependency>
			<dependency>
				<groupId>xerces</groupId>
				<artifactId>xercesImpl</artifactId>
				<version>2.12.2</version>
			</dependency>
			<dependency>
				<groupId>joda-time</groupId>
				<artifactId>joda-time</artifactId>
				<version>2.11.1</version>
			</dependency>
			<dependency>
				<groupId>com.google.guava</groupId>
				<artifactId>guava</artifactId>
				<version>32.0.0-jre</version>
			</dependency>
			<dependency>
				<groupId>com.fasterxml.jackson</groupId>
				<artifactId>jackson-bom</artifactId>
				<version>${jackson.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>

			<dependency>
				<groupId>io.projectreactor.netty</groupId>
				<artifactId>reactor-netty</artifactId>
				<version>${reactor-netty.version}</version>
			</dependency>

			<dependency>
				<groupId>jakarta.jms</groupId>
				<artifactId>jakarta.jms-api</artifactId>
				<version>${jakarta-jms.version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.activemq</groupId>
				<artifactId>artemis-jakarta-client</artifactId>
				<version>${artemis.version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.activemq</groupId>
				<artifactId>artemis-jakarta-server</artifactId>
				<version>${artemis.version}</version>
			</dependency>
			<!-- Camel integration -->
			<dependency>
				<groupId>org.apache.camel</groupId>
				<artifactId>camel-bom</artifactId>
				<version>${camel.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>com.fasterxml.uuid</groupId>
				<artifactId>java-uuid-generator</artifactId>
				<version>3.3.0</version>
			</dependency>
			<dependency>
				<groupId>net.sourceforge.jtds</groupId>
				<artifactId>jtds</artifactId>
				<version>1.3.0</version>
			</dependency>
			<dependency>
				<groupId>com.microsoft.sqlserver</groupId>
				<artifactId>mssql-jdbc</artifactId>
				<version>11.2.1.jre17</version>
			</dependency>
			<dependency>
				<groupId>org.assertj</groupId>
				<artifactId>assertj-core</artifactId>
				<version>3.24.2</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>net.javacrumbs.json-unit</groupId>
				<artifactId>json-unit-assertj</artifactId>
				<version>2.35.0</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>com.github.h-thurow</groupId>
				<artifactId>simple-jndi</artifactId>
				<version>0.23.0</version>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<modules>
		<module>modules/flowable-bom</module>
		<module>modules/flowable-bpmn-model</module>
		<module>modules/flowable-process-validation</module>
		<module>modules/flowable-bpmn-layout</module>
		<module>modules/flowable-image-generator</module>
		<module>modules/flowable-bpmn-converter</module>
		<module>modules/flowable-engine-common-api</module>
		<module>modules/flowable-engine-common</module>
		<module>modules/flowable-entitylink-service-api</module>
		<module>modules/flowable-entitylink-service</module>
		<module>modules/flowable-variable-service-api</module>
		<module>modules/flowable-variable-service</module>
        <module>modules/flowable-identitylink-service-api</module>
		<module>modules/flowable-identitylink-service</module>
		<module>modules/flowable-event-registry-api</module>
		<module>modules/flowable-event-registry-model</module>
		<module>modules/flowable-event-registry-json-converter</module>
		<module>modules/flowable-event-registry</module>
		<module>modules/flowable-event-registry-configurator</module>
		<module>modules/flowable-eventsubscription-service-api</module>
		<module>modules/flowable-eventsubscription-service</module>
        <module>modules/flowable-task-service-api</module>
        <module>modules/flowable-task-service</module>
        <module>modules/flowable-job-service-api</module>
        <module>modules/flowable-job-service</module>
        <module>modules/flowable-job-spring-service</module>
        <module>modules/flowable-batch-service-api</module>
        <module>modules/flowable-batch-service</module>
		<module>modules/flowable-idm-api</module>
		<module>modules/flowable-idm-engine</module>
		<module>modules/flowable-idm-engine-configurator</module>
		<module>modules/flowable-form-model</module>
		<module>modules/flowable-form-api</module>
		<module>modules/flowable-dmn-model</module>
		<module>modules/flowable-dmn-api</module>
		<module>modules/flowable-dmn-xml-converter</module>
		<module>modules/flowable-dmn-engine</module>
		<module>modules/flowable-dmn-engine-configurator</module>
		<module>modules/flowable-dmn-image-generator</module>
		<module>modules/flowable-content-api</module>
        <module>modules/flowable-cmmn-api</module>
        <module>modules/flowable-cmmn-model</module>
        <module>modules/flowable-cmmn-converter</module>
        <module>modules/flowable-cmmn-image-generator</module>
        <module>modules/flowable-case-validation</module>
        <module>modules/flowable-cmmn-engine</module>
		<module>modules/flowable-cmmn-engine-configurator</module>
		<module>modules/flowable-engine</module>
		<module>modules/flowable-app-engine-api</module>
		<module>modules/flowable-app-engine</module>
		<module>modules/flowable-spring-security</module>
        <module>modules/flowable-http-common</module>
        <module>modules/flowable-mail</module>
    </modules>

	<build>
		<plugins>
			<plugin>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.10.1</version>
				<configuration>
					<source>${jdk.version}</source>
					<target>${jdk.version}</target>
					<showDeprecation>true</showDeprecation>
					<showWarnings>true</showWarnings>
					<parameters>true</parameters>
				</configuration>
			</plugin>
			<plugin>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>3.0.0-M5</version>
				<configuration>
					<failIfNoTests>false</failIfNoTests>
					<trimStackTrace>false</trimStackTrace>
					<redirectTestOutputToFile>true</redirectTestOutputToFile>
					<excludes>
						<exclude>**/*TestCase.java</exclude>
					</excludes>
					<runOrder>alphabetical</runOrder>
					<rerunFailingTestsCount>5</rerunFailingTestsCount>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.felix</groupId>
				<artifactId>maven-bundle-plugin</artifactId>
				<version>5.1.8</version>
				<extensions>true</extensions>
				<configuration>
					<excludeDependencies>${flowable.osgi.exclude.dependencies}</excludeDependencies>
					<instructions>
						<Bundle-Name>${project.name}</Bundle-Name>
						<Bundle-SymbolicName>${flowable.osgi.symbolic.name}</Bundle-SymbolicName>
						<Bundle-Activator>${flowable.osgi.activator}</Bundle-Activator>
						<Export-Package>${flowable.osgi.export}</Export-Package>
						<Import-Package>org.flowable.osgi;resolution:=optional,
							${flowable.osgi.import}</Import-Package>
						<DynamicImport-Package>${flowable.osgi.dynamic}</DynamicImport-Package>
						<Private-Package>${flowable.osgi.private.pkg}</Private-Package>
						<Implementation-Title>Flowable</Implementation-Title>
						<Implementation-Version>${project.version}</Implementation-Version>
						<Include-Resource>${flowable.osgi.include.resource}</Include-Resource>
						<_versionpolicy>${flowable.osgi.import.default.version}</_versionpolicy>
						<_removeheaders>${flowable.osgi.remove.headers}</_removeheaders>
						<_failok>${flowable.osgi.failok}</_failok>
						<Export-Service>${flowable.osgi.export.service}</Export-Service>
						<Import-Service>${flowable.osgi.import.service}</Import-Service>
						<Embed-Dependency>${flowable.osgi.embed}</Embed-Dependency>
					</instructions>
					<versions>
						<flowable.osgi.version.clean>${project.version}</flowable.osgi.version.clean>
					</versions>
				</configuration>
			</plugin>
		</plugins>
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-deploy-plugin</artifactId>
					<version>${maven.deploy.plugin.version}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-jar-plugin</artifactId>
					<version>3.3.0</version>
					<configuration>
						<archive>
							<manifest>
								<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
							</manifest>
						</archive>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-javadoc-plugin</artifactId>
					<version>3.4.1</version>
					<configuration>
						<source>${jdk.version}</source>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-gpg-plugin</artifactId>
					<version>3.0.1</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-resources-plugin</artifactId>
					<version>${maven.resources.plugin.version}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-source-plugin</artifactId>
					<version>3.2.1</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-war-plugin</artifactId>
					<version>3.3.2</version>
					<configuration>
						<failOnMissingWebXml>false</failOnMissingWebXml>
						<archive>
							<manifest>
								<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
							</manifest>
						</archive>
					</configuration>
				</plugin>
				<!--This plugin's configuration is used to store Eclipse m2e settings
					only. It has no influence on the Maven build itself. -->
				<plugin>
					<groupId>org.eclipse.m2e</groupId>
					<artifactId>lifecycle-mapping</artifactId>
					<version>1.0.0</version>
					<configuration>
						<lifecycleMappingMetadata>
							<pluginExecutions>
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>org.apache.felix</groupId>
										<artifactId>maven-bundle-plugin</artifactId>
										<versionRange>[2.1.0,)</versionRange>
										<goals>
											<goal>manifest</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore></ignore>
									</action>
								</pluginExecution>
							</pluginExecutions>
						</lifecycleMappingMetadata>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-release-plugin</artifactId>
					<version>2.5.3</version>
					<configuration>
						<mavenExecutorId>forked-path</mavenExecutorId>
						<useReleaseProfile>false</useReleaseProfile>
						<arguments>${arguments}</arguments>
						<releaseProfiles>deploy</releaseProfiles>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.springframework.boot</groupId>
					<artifactId>spring-boot-maven-plugin</artifactId>
					<version>${spring.boot.version}</version>
					<executions>
						<execution>
							<goals>
								<goal>build-info</goal>
								<goal>repackage</goal>
							</goals>
							<configuration>
								<mainClass>${start-class}</mainClass>
								<!-- The generated Spring Boot jar / war should not be made executable be prepending a launch script to the jar / war
								Such jars cause issues when being unpacked by maven dependency:unpack, it can also cause issues when deploying in a servlet container.
								NB: The jar / war is still self contained and can be run with java -jar
								-->
								<executable>false</executable>
							</configuration>
						</execution>
					</executions>
				</plugin>
				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>exec-maven-plugin</artifactId>
					<version>3.1.0</version>
				</plugin>
				<plugin>
					<groupId>com.google.cloud.tools</groupId>
					<artifactId>jib-maven-plugin</artifactId>
					<version>${jib-maven-plugin.version}</version>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>

	<profiles>
		<profile>
			<id>nofail</id>
			<properties>
				<maven.test.failure.ignore>true</maven.test.failure.ignore>
			</properties>
		</profile>
		<profile>
			<id>dockerDeps</id>
			<modules>
				<module>modules/flowable-app-rest</module>
			</modules>
		</profile>
		<profile>
			<id>deploy</id>
			<modules>
				<module>modules/flowable-bom</module>
				<module>modules/flowable-bpmn-model</module>
				<module>modules/flowable-process-validation</module>
				<module>modules/flowable-image-generator</module>
				<module>modules/flowable-bpmn-converter</module>
				<module>modules/flowable-engine</module>
				<module>modules/flowable-secure-javascript</module>
				<module>modules/flowable-groovy-script-static-engine</module>
				<module>modules/flowable-bpmn-layout</module>
                <module>modules/flowable-spring-common</module>
                <module>modules/flowable-engine-configurator</module>
                <module>modules/flowable-spring-configurator</module>
                <module>modules/flowable-event-registry-spring</module>
                <module>modules/flowable-event-registry-spring-configurator</module>
                <module>modules/flowable-event-registry-rest</module>
                <module>modules/flowable-app-engine-spring</module>
                <module>modules/flowable-app-engine-rest</module>
				<module>modules/flowable-dmn-model</module>
				<module>modules/flowable-dmn-xml-converter</module>
				<module>modules/flowable-dmn-engine</module>
				<module>modules/flowable-dmn-engine-configurator</module>
				<module>modules/flowable-dmn-spring</module>
				<module>modules/flowable-dmn-spring-configurator</module>
				<module>modules/flowable-dmn-rest</module>
                <module>modules/flowable-cmmn-api</module>
                <module>modules/flowable-cmmn-model</module>
                <module>modules/flowable-cmmn-converter</module>
                <module>modules/flowable-case-validation</module>
                <module>modules/flowable-cmmn-engine</module>
                <module>modules/flowable-cmmn-engine-configurator</module>
                <module>modules/flowable-cmmn-spring</module>
                <module>modules/flowable-cmmn-spring-configurator</module>
                <module>modules/flowable-cmmn-rest</module>
				<module>modules/flowable-external-job-rest</module>
				<module>modules/flowable-form-model</module>
				<module>modules/flowable-common-rest</module>
				<module>modules/flowable-rest</module>
				<module>modules/flowable-app-rest</module>
				<module>modules/flowable-idm-engine-configurator</module>
				<module>modules/flowable-idm-spring</module>
				<module>modules/flowable-idm-spring-configurator</module>
                <module>modules/flowable-idm-rest</module>
				<module>modules/flowable-spring</module>
				<module>modules/flowable5-engine</module>
				<module>modules/flowable5-compatibility</module>
				<module>modules/flowable5-spring</module>
				<module>modules/flowable5-spring-compatibility</module>
				<module>modules/flowable-spring-boot</module>
				<module>modules/flowable-cxf</module>
				<module>modules/flowable-http</module>
				<module>modules/flowable-http-common</module>
				<module>modules/flowable-camel</module>
				<module>modules/flowable-cdi</module>
				<module>modules/flowable-cmmn-cdi</module>
				<module>modules/flowable-osgi</module>
				<module>modules/flowable-ldap</module>
				<module>modules/flowable-ldap-configurator</module>
				<module>modules/flowable-mail</module>
				<module>modules/flowable-jmx</module>
				<module>tooling/archetypes/flowable-archetype-unittest</module>
			</modules>
			<build>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-source-plugin</artifactId>
						<executions>
							<execution>
								<goals>
									<goal>jar</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-javadoc-plugin</artifactId>
						<configuration>
                            <doclint>none</doclint>
                        </configuration>
						<executions>
							<execution>
								<id>attach-javadocs</id>
								<goals>
									<goal>jar</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-gpg-plugin</artifactId>
						<executions>
							<execution>
								<id>sign-artifacts</id>
								<phase>verify</phase>
								<goals>
									<goal>sign</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
		<profile>
			<id>check</id>
			<modules>
				<module>modules/flowable-bom</module>
				<module>modules/flowable-bpmn-model</module>
				<module>modules/flowable-process-validation</module>
				<module>modules/flowable-image-generator</module>
				<module>modules/flowable-bpmn-converter</module>
				<module>modules/flowable-bpmn-layout</module>
                <module>modules/flowable-spring-common</module>
				<module>modules/flowable-idm-engine-configurator</module>
				<module>modules/flowable-idm-spring</module>
				<module>modules/flowable-idm-spring-configurator</module>
                <module>modules/flowable-idm-rest</module>
                <module>modules/flowable-event-registry-spring</module>
                <module>modules/flowable-event-registry-spring-configurator</module>
                <module>modules/flowable-event-registry-rest</module>
                <module>modules/flowable-ldap</module>
				<module>modules/flowable-spring</module>
				<module>modules/flowable-groovy-script-static-engine</module>
				<module>modules/flowable-common-rest</module>
				<module>modules/flowable-rest</module>
				<module>modules/flowable-cxf</module>
				<module>modules/flowable-secure-javascript</module>
                <module>modules/flowable-engine-configurator</module>
                <module>modules/flowable-spring-configurator</module>
                <module>modules/flowable-app-engine-spring</module>
                <module>modules/flowable-app-engine-rest</module>
				<module>modules/flowable-dmn-engine</module>
				<module>modules/flowable-dmn-model</module>
				<module>modules/flowable-dmn-xml-converter</module>
				<module>modules/flowable-dmn-engine-configurator</module>
				<module>modules/flowable-dmn-spring</module>
				<module>modules/flowable-dmn-spring-configurator</module>
				<module>modules/flowable-dmn-rest</module>
                <module>modules/flowable-cmmn-api</module>
                <module>modules/flowable-cmmn-model</module>
                <module>modules/flowable-cmmn-converter</module>
                <module>modules/flowable-case-validation</module>
                <module>modules/flowable-cmmn-engine</module>
                <module>modules/flowable-cmmn-engine-configurator</module>
                <module>modules/flowable-cmmn-spring</module>
                <module>modules/flowable-cmmn-spring-configurator</module>
                <module>modules/flowable-cmmn-rest</module>
				<module>modules/flowable-external-job-rest</module>
                <module>modules/flowable-http</module>
                <module>modules/flowable-http-common</module>
                <module>modules/flowable-mail</module>
                <module>modules/flowable-spring-boot</module>
			</modules>
		</profile>
		<profile>
			<id>checkspring</id> <!-- [Joram] Is this still used?? -->
			<modules>
                <module>modules/flowable-spring-common</module>
				<module>modules/flowable-idm-spring</module>
				<module>modules/flowable-spring</module>
			</modules>
		</profile>
		<profile>
			<id>checkcdi</id>
			<modules>
				<module>modules/flowable-cdi</module>
				<module>modules/flowable-cmmn-cdi</module>
			</modules>
		</profile>
		<profile>
			<id>checkosgi</id>
			<modules>
				<module>modules/flowable-osgi</module>
			</modules>
		</profile>
		<profile>
			<!-- this profile prevents that tests are executed while running the qa/build.xml
				test.demo.setup target -->
			<id>nodocs</id>
			<activation>
				<property>
					<name>nodocs</name>
				</property>
			</activation>
			<properties>
				<skipTests>true</skipTests>
			</properties>
		</profile>
        <profile>
            <id>coverage</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.jacoco</groupId>
                        <artifactId>jacoco-maven-plugin</artifactId>
                        <version>0.8.8</version>
                        <executions>
                            <execution>
                                <goals>
                                    <goal>prepare-agent</goal>
                                </goals>
                            </execution>
                            <execution>
                                <id>report</id>
                                <phase>prepare-package</phase>
                                <goals>
                                    <goal>report</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
		<profile>
			<id>distro</id>
			<modules>
				<module>modules/flowable-bom</module>
				<module>modules/flowable-bpmn-model</module>
				<module>modules/flowable-process-validation</module>
				<module>modules/flowable-image-generator</module>
				<module>modules/flowable-bpmn-converter</module>
				<module>modules/flowable-bpmn-layout</module>
                <module>modules/flowable-spring-common</module>
                <module>modules/flowable-engine-configurator</module>
                <module>modules/flowable-spring-configurator</module>
				<module>modules/flowable-secure-javascript</module>
				<module>modules/flowable-groovy-script-static-engine</module>
                <module>modules/flowable-form-model</module>
                <module>modules/flowable-idm-engine-configurator</module>
                <module>modules/flowable-idm-spring</module>
                <module>modules/flowable-idm-spring-configurator</module>
                <module>modules/flowable-idm-rest</module>
                <module>modules/flowable-event-registry-spring</module>
                <module>modules/flowable-event-registry-spring-configurator</module>
                <module>modules/flowable-event-registry-rest</module>
                <module>modules/flowable-event-registry-integration-test</module>
                <module>modules/flowable-spring</module>
                <module>modules/flowable-app-engine-spring</module>
                <module>modules/flowable-app-engine-rest</module>
				<module>modules/flowable-dmn-model</module>
				<module>modules/flowable-dmn-xml-converter</module>
				<module>modules/flowable-dmn-engine</module>
				<module>modules/flowable-dmn-engine-configurator</module>
				<module>modules/flowable-dmn-spring</module>
				<module>modules/flowable-dmn-spring-configurator</module>
				<module>modules/flowable-dmn-rest</module>
                <module>modules/flowable-cmmn-api</module>
                <module>modules/flowable-cmmn-model</module>
                <module>modules/flowable-cmmn-converter</module>
                <module>modules/flowable-case-validation</module>
                <module>modules/flowable-cmmn-engine</module>
                <module>modules/flowable-cmmn-engine-configurator</module>
                <module>modules/flowable-cmmn-spring</module>
                <module>modules/flowable-cmmn-spring-configurator</module>
                <module>modules/flowable-cmmn-rest</module>
				<module>modules/flowable-external-job-rest</module>
				<module>modules/flowable5-engine</module>
				<module>modules/flowable5-compatibility</module>
				<module>modules/flowable5-spring</module>
				<module>modules/flowable5-spring-compatibility</module>
				<module>modules/flowable-spring-boot</module>
				<module>modules/flowable-common-rest</module>
				<module>modules/flowable-rest</module>
				<module>modules/flowable-app-rest</module>
				<module>modules/flowable-cxf</module>
				<module>modules/flowable-osgi</module>
				<module>modules/flowable-camel</module>
				<module>modules/flowable-http</module>
				<module>modules/flowable-http-common</module>
				<module>modules/flowable-mail</module>
				<module>modules/flowable-cdi</module>
				<module>modules/flowable-cmmn-cdi</module>
				<module>modules/flowable-ldap</module>
				<module>modules/flowable-ldap-configurator</module>
				<module>modules/flowable-jmx</module>
				<module>tooling/archetypes/flowable-archetype-unittest</module>
			</modules>
			<build>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-source-plugin</artifactId>
						<executions>
							<execution>
								<id>attach-sources</id>
								<goals>
									<goal>jar-no-fork</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
		<profile>
			<id>database</id>
			<activation>
				<property>
					<name>database</name>
				</property>
			</activation>
			<modules>
				<module>modules/flowable-engine</module>
			</modules>
		</profile>
		<profile>
			<id>databaseform</id>
			<activation>
				<property>
					<name>databaseform</name>
				</property>
			</activation>
			<modules>
				<module>modules/flowable-form-model</module>
				<module>modules/flowable-form-api</module>
			</modules>
		</profile>
		<profile>
			<id>databasedmn</id>
			<activation>
				<property>
					<name>databasedmn</name>
				</property>
			</activation>
			<modules>
				<module>modules/flowable-dmn-model</module>
				<module>modules/flowable-dmn-api</module>
				<module>modules/flowable-dmn-engine</module>
				<module>modules/flowable-dmn-xml-converter</module>
			</modules>
		</profile>
		<profile>
			<id>dmn</id>
			<modules>
				<module>modules/flowable-dmn-model</module>
				<module>modules/flowable-dmn-api</module>
				<module>modules/flowable-dmn-engine</module>
				<module>modules/flowable-dmn-xml-converter</module>
			</modules>
		</profile>
		<profile>
			<id>databasecontent</id>
			<activation>
				<property>
					<name>databasecontent</name>
				</property>
			</activation>
			<modules>
				<module>modules/flowable-content-api</module>
			</modules>
		</profile>
		<profile>
			<id>content</id>
			<modules>
				<module>modules/flowable-content-api</module>
			</modules>
		</profile>
		<profile>
			<id>databaseidm</id>
			<activation>
				<property>
					<name>databaseidm</name>
				</property>
			</activation>
			<modules>
				<module>modules/flowable-idm-api</module>
				<module>modules/flowable-idm-engine</module>
			</modules>
		</profile>
		<profile>
			<id>databasewithschemaform</id>
			<activation>
				<property>
					<name>databasewithschemaform</name>
				</property>
			</activation>
			<modules>
				<module>modules/flowable-form-model</module>
				<module>modules/flowable-form-api</module>
			</modules>
		</profile>
		<profile>
			<id>databasewithschemadmn</id>
			<activation>
				<property>
					<name>databasewithschemadmn</name>
				</property>
			</activation>
			<modules>
				<module>modules/flowable-dmn-model</module>
				<module>modules/flowable-dmn-api</module>
				<module>modules/flowable-dmn-engine</module>
			</modules>
		</profile>
		<profile>
			<id>databasewithschemacontent</id>
			<activation>
				<property>
					<name>databasewithschemacontent</name>
				</property>
			</activation>
			<modules>
				<module>modules/flowable-content-api</module>
			</modules>
		</profile>
		<profile>
			<id>databasewithschemaidm</id>
			<activation>
				<property>
					<name>databasewithschemaidm</name>
				</property>
			</activation>
			<modules>
				<module>modules/flowable-idm-api</module>
				<module>modules/flowable-idm-engine</module>
			</modules>
		</profile>
		<profile>
			<id>buildRestappDependencies</id>
			<modules>
				<module>modules/flowable-bom</module>
				<module>modules/flowable-bpmn-model</module>
				<module>modules/flowable-process-validation</module>
				<module>modules/flowable-image-generator</module>
                <module>modules/flowable-spring-common</module>
				<module>modules/flowable-secure-javascript</module>
				<module>modules/flowable-bpmn-converter</module>
				<module>modules/flowable-engine</module>
				<module>modules/flowable-idm-engine-configurator</module>
				<module>modules/flowable-idm-spring</module>
				<module>modules/flowable-idm-spring-configurator</module>
                <module>modules/flowable-event-registry-configurator</module>
                <module>modules/flowable-event-registry-spring</module>
                <module>modules/flowable-event-registry-spring-configurator</module>
                <module>modules/flowable-event-registry-rest</module>
				<module>modules/flowable-spring</module>
				<module>modules/flowable-common-rest</module>
				<module>modules/flowable-rest</module>
                <module>modules/flowable-idm-rest</module>
                <module>modules/flowable-cmmn-api</module>
                <module>modules/flowable-cmmn-model</module>
                <module>modules/flowable-cmmn-converter</module>
                <module>modules/flowable-case-validation</module>
                <module>modules/flowable-cmmn-engine</module>
                <module>modules/flowable-cmmn-engine-configurator</module>
                <module>modules/flowable-cmmn-spring</module>
                <module>modules/flowable-cmmn-spring-configurator</module>
                <module>modules/flowable-cmmn-rest</module>
				<module>modules/flowable-external-job-rest</module>
				<module>modules/flowable-dmn-model</module>
				<module>modules/flowable-dmn-api</module>
				<module>modules/flowable-dmn-engine</module>
				<module>modules/flowable-dmn-engine-configurator</module>
				<module>modules/flowable-dmn-spring</module>
				<module>modules/flowable-dmn-spring-configurator</module>
				<module>modules/flowable-dmn-xml-converter</module>
				<module>modules/flowable-dmn-rest</module>
				<module>modules/flowable-form-model</module>
				<module>modules/flowable-form-api</module>
				<module>modules/flowable-content-api</module>
				<module>modules/flowable-groovy-script-static-engine</module>
			</modules>
			<properties>
				<skipTests>true</skipTests>
			</properties>
			<build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>attach-javadocs</id>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                        <configuration>
                            <additionalparam>-Xdoclint:none</additionalparam>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
		</profile>
		<profile>
			<id>postgresql</id>
			<dependencies>
				<dependency>
					<groupId>org.postgresql</groupId>
					<artifactId>postgresql</artifactId>
				</dependency>
			</dependencies>
		</profile>
		<profile>
			<id>mssql</id>
			<dependencies>
				<dependency>
					<groupId>com.microsoft.sqlserver</groupId>
					<artifactId>mssql-jdbc</artifactId>
				</dependency>
			</dependencies>
		</profile>
		<profile>
			<id>mysql</id>
			<dependencies>
				<dependency>
					<groupId>com.mysql</groupId>
					<artifactId>mysql-connector-j</artifactId>
				</dependency>
			</dependencies>
		</profile>
		<profile>
			<id>mariadb</id>
			<dependencies>
				<dependency>
					<groupId>org.mariadb.jdbc</groupId>
					<artifactId>mariadb-java-client</artifactId>
				</dependency>
			</dependencies>
		</profile>
		<profile>
			<id>db2</id>
			<dependencies>
				<dependency>
					<groupId>com.ibm.db2</groupId>
					<artifactId>jcc</artifactId>
				</dependency>
			</dependencies>
		</profile>
		<profile>
			<id>oracle</id>
			<dependencies>
				<dependency>
					<groupId>com.oracle.database.jdbc</groupId>
					<artifactId>${oracle.jdbc.artifact}</artifactId>
				</dependency>
			</dependencies>
		</profile>
	</profiles>

	<!-- Various information, not used by the build -->

	<url>https://www.flowable.org</url>
	<licenses>
		<license>
			<name>Apache v2</name>
			<url>https://www.apache.org/licenses/LICENSE-2.0.html</url>
		</license>
	</licenses>
	<organization>
		<name>Flowable</name>
		<url>https://www.flowable.org</url>
	</organization>
	<developers>
		<developer>
			<name>Tijs Rademakers</name>
			<organization>Flowable</organization>
			<url>https://www.flowable.org</url>
		</developer>
		<developer>
			<name>Joram Barrez</name>
			<organization>Flowable</organization>
			<url>https://www.flowable.org</url>
		</developer>
		<developer>
            <name>Filip Hrisafov</name>
            <organization>Flowable</organization>
            <url>https://www.flowable.org</url>
        </developer>
		<developer>
			<name>Yvo Swillens</name>
			<organization>Flowable</organization>
			<url>https://www.flowable.org</url>
		</developer>
		<developer>
			<name>Josh Long</name>
			<organization>Pivotal</organization>
			<url>https://www.pivotal.com</url>
		</developer>
	</developers>
	<issueManagement>
		<system>Github issues</system>
		<url>https://github.com/flowable/flowable-engine/issues</url>
	</issueManagement>
	<scm>
		<url>git@github.com:flowable/flowable-engine.git</url>
		<connection>scm:git:git@github.com:flowable/flowable-engine.git</connection>
		<developerConnection>scm:git:git@github.com:flowable/flowable-engine.git</developerConnection>
	</scm>
	<distributionManagement>
		<snapshotRepository>
			<id>sonatype-nexus-snapshots</id>
			<name>Sonatype Nexus Snapshots</name>
			<url>${distributionManagementSnapshotsUrl}</url>
		</snapshotRepository>
		<repository>
			<id>sonatype-nexus-staging</id>
			<name>Nexus Release Repository</name>
			<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
		</repository>
	</distributionManagement>
</project>
