<?xml version="1.0" encoding="UTF-8"?>
<!--

    Licensed to the Apache Software Foundation (ASF) under one or more
    contributor license agreements.  See the NOTICE file distributed with
    this work for additional information regarding copyright ownership.
    The ASF licenses this file to You under the Apache License, Version 2.0
    (the "License"); you may not use this file except in compliance with
    the License.  You may obtain a copy of the License at

         http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.

-->
<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>

    <parent>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-dependencies</artifactId>
        <version>3.6.0</version>
    </parent>

    <groupId>org.apache.camel.karaf</groupId>
    <artifactId>karaf</artifactId>
    <version>3.6.1-SNAPSHOT</version>
    <packaging>pom</packaging>

    <name>Camel Karaf</name>
    <description>Camel Karaf Root POM</description>
    <url>https://camel.apache.org</url>
    <inceptionYear>2007</inceptionYear>

    <developers>
        <developer>
            <name>The Apache Camel Team</name>
            <email>dev@camel.apache.org</email>
            <url>https://camel.apache.org</url>
            <organization>Apache Software Foundation</organization>
            <organizationUrl>http://apache.org/</organizationUrl>
        </developer>
    </developers>

    <mailingLists>
        <mailingList>
            <name>Development List</name>
            <subscribe>dev-subscribe@camel.apache.org</subscribe>
            <unsubscribe>dev-unsubscribe@camel.apache.org</unsubscribe>
            <post>dev@camel.apache.org</post>
        </mailingList>
        <mailingList>
            <name>User List</name>
            <subscribe>users-subscribe@camel.apache.org</subscribe>
            <unsubscribe>users-unsubscribe@camel.apache.org</unsubscribe>
            <post>users@camel.apache.org</post>
        </mailingList>
        <mailingList>
            <name>Commits List</name>
            <subscribe>commits-subscribe@camel.apache.org</subscribe>
            <unsubscribe>commits-unsubscribe@camel.apache.org</unsubscribe>
            <post>commits@camel.apache.org</post>
        </mailingList>
    </mailingLists>

    <modules>
        <module>tooling</module>
        <module>core</module>
        <module>components</module>
        <module>platforms</module>
        <module>catalog</module>
        <module>tests</module>
        <module>bom</module>
    </modules>

    <scm>
        <connection>scm:git:http://gitbox.apache.org/repos/asf/camel-karaf.git</connection>
        <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/camel-karaf.git</developerConnection>
        <url>https://gitbox.apache.org/repos/asf?p=camel-karaf.git;a=summary</url>
        <tag>HEAD</tag>
    </scm>
    <issueManagement>
        <system>jira</system>
        <url>https://issues.apache.org/jira/browse/CAMEL</url>
    </issueManagement>
    <distributionManagement>
        <site>
            <id>apache.website</id>
            <url>${site-repo-url}</url>
        </site>
    </distributionManagement>

    <properties>

        <!-- unify the encoding for all the modules -->
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

        <site-repo-url>scpexe://people.apache.org/www/camel.apache.org/maven/</site-repo-url>
        <jdk.version>1.8</jdk.version>
        <compiler.fork>false</compiler.fork>

        <!-- Camel target version -->
        <camel-version>3.6.0</camel-version>

        <ant-bundle-version>1.7.0_6</ant-bundle-version>
        <antlr-bundle-version>3.5.2_1</antlr-bundle-version>
        <antlr-runtime-bundle-version>3.5.2_1</antlr-runtime-bundle-version>
        <antlr-runtime-v4-version>4.8</antlr-runtime-v4-version>
        <apache-any23-bundle-version>2.3_1</apache-any23-bundle-version>
        <apache-mime4j-version>0.8.3</apache-mime4j-version>
        <asciidoctorj-version>2.1.0</asciidoctorj-version>
        <asm-version>5.0.4</asm-version>
        <aries-spifly.bundle.version>1.3.0</aries-spifly.bundle.version>
        <asm.bundle.version>8.0.1</asm.bundle.version>
        <asterisk-java-bundle-version>1.0.0-final_1</asterisk-java-bundle-version>
        <automaton-bundle-version>1.11-8_1</automaton-bundle-version>
        <avalon-bundle-version>4.3.1_1</avalon-bundle-version>
        <avro-bundle-version>1.9.1_1</avro-bundle-version>
        <aws-java-sdk-bundle-version>1.11.714_1</aws-java-sdk-bundle-version>
        <azure-core-bundle-version>1.4.0_1</azure-core-bundle-version>
        <azure-core-amqp-bundle-version>1.4.0_1</azure-core-amqp-bundle-version>
        <azure-messaging-eventhubs-bundle-version>5.1.2_1</azure-messaging-eventhubs-bundle-version>
        <azure-messaging-eventhubs-checkpointstore-blob-bundle-version>1.1.2_1</azure-messaging-eventhubs-checkpointstore-blob-bundle-version>
        <azure-storage-common-bundle-version>12.8.0_2</azure-storage-common-bundle-version>
        <azure-storage-blob-bundle-version>12.8.0_2</azure-storage-blob-bundle-version>
        <azure-storage-queue-bundle-version>12.6.0_1</azure-storage-queue-bundle-version>
        <azure-storage-java-sdk-bundle-version>8.6.0_1</azure-storage-java-sdk-bundle-version>
        <azure-guava-version>20.0</azure-guava-version>
        <backport-util-concurrent-version>3.1</backport-util-concurrent-version>
        <bcel-bundle-version>5.2_4</bcel-bundle-version>
        <bndlib-version>2.4.0</bndlib-version>
        <braintree-jackson2-version>2.11.2</braintree-jackson2-version>
        <build-helper-maven-plugin-version>1.12</build-helper-maven-plugin-version>
        <c3p0-bundle-version>0.9.5.5_1</c3p0-bundle-version>
        <cassandra-jackson2-version>2.11.1</cassandra-jackson2-version>
        <cassandra-metrics-version>4.0.5</cassandra-metrics-version>
        <cassandra-shaded-guava>25.1-jre-graal-sub-1</cassandra-shaded-guava>
        <chunk-templates-bundle-version>3.5.0_1</chunk-templates-bundle-version>
        <cometd-java-server-bundle-version>2.3.1_2</cometd-java-server-bundle-version>
        <commons-httpclient-bundle-version>3.1_7</commons-httpclient-bundle-version>
        <consul-client-bundle-version>1.3.3_1</consul-client-bundle-version>
        <datastax-native-protocol>1.4.10</datastax-native-protocol>
        <digitalocean-api-client-bundle-version>2.17_1</digitalocean-api-client-bundle-version>
        <digitalpetri-fsm-client>0.2</digitalpetri-fsm-client>
        <digitalpetri-netty-client>0.3</digitalpetri-netty-client>
        <dnsjava-bundle-version>3.2.2_1</dnsjava-bundle-version>
        <docker-java-bundle-version>3.2.5_1</docker-java-bundle-version>
        <docker-java-commons-compress-version>1.20</docker-java-commons-compress-version>
        <debezium-version>1.0.0.Final</debezium-version>
        <egit-github-core-bundle-version>2.1.5_1</egit-github-core-bundle-version>
        <ehcache-version>2.10.6</ehcache-version>
        <elasticsearch-rest-bundle-version>7.9.0_1</elasticsearch-rest-bundle-version>
        <eddsa-version>0.3.0</eddsa-version>
        <facebook4j-core-bundle-version>2.4.13_1</facebook4j-core-bundle-version>
        <fastjson-bundle-version>1.2.73_1</fastjson-bundle-version>
        <fop-bundle-version>2.3_1</fop-bundle-version>
        <generex-bundle-version>1.0.2_1</generex-bundle-version>
        <google-truth-version>0.30</google-truth-version>
        <groovy-version>3.0.3</groovy-version>
        <grpc-bundle-version>1.28.0_1</grpc-bundle-version>
        <grpc-errorprone-version>2.3.4</grpc-errorprone-version>
        <guice-bundle-version>3.0_1</guice-bundle-version>
        <hikaricp-version>2.4.13</hikaricp-version>
        <hk2-osgi-resource-version>1.0.1</hk2-osgi-resource-version>
        <htmlunit-bundle-version>2.24_1</htmlunit-bundle-version>
        <hystrix-bundle-version>1.5.18_1</hystrix-bundle-version>
        <ibatis-bundle-version>2.3.4.726_4</ibatis-bundle-version>
        <influx-java-driver-bundle-version>2.20_1</influx-java-driver-bundle-version>
        <irclib-bundle-version>1.10_5</irclib-bundle-version>
        <ironmq-bundle-version>3.0.5_1</ironmq-bundle-version>
        <isorelax-bundle-version>20050913_4</isorelax-bundle-version>
        <ivy-version>2.4.0</ivy-version>
        <jandex-version>2.1.2.Final</jandex-version>
        <jasypt-bundle-version>1.9.3_1</jasypt-bundle-version>
        <java-apns-bundle-version>1.0.0.Beta6_1</java-apns-bundle-version>
        <java-util-bundle-version>1.53.0_1</java-util-bundle-version>
        <javax-inject-bundle-version>1_2</javax-inject-bundle-version>
        <jaxb-version>2.3.0</jaxb-version>
        <jaxb-bundle-version>2.3.1_1</jaxb-bundle-version>
        <jdom-bundle-version>2.0.6_1</jdom-bundle-version>
        <jedis-client-bundle-version>3.3.0_2</jedis-client-bundle-version>
        <jetty9-version>9.4.20.v20190813</jetty9-version>
        <jing-bundle-version>20030619_5</jing-bundle-version>
        <jodatime-bundle-version>1.6.2</jodatime-bundle-version>
        <jolt-bundle-version>0.1.1_1</jolt-bundle-version>
        <jcodings-version>1.0.46</jcodings-version>
        <joni-version>2.1.31</joni-version>
        <josql-bundle-version>1.5_5</josql-bundle-version>
        <jsch-bundle-version>0.1.55_1</jsch-bundle-version>
        <json-flattener-version>0.9.0</json-flattener-version>
        <jt400-bundle-version>10.4_1</jt400-bundle-version>
        <juel-bundle-version>2.1.3_1</juel-bundle-version>
        <junit-bundle-version>4.11_1</junit-bundle-version>
        <jzlib-bundle-version>1.1.3_2</jzlib-bundle-version>
        <kafka-bundle-version>2.6.0_1</kafka-bundle-version>
        <karaf4-version>4.2.9</karaf4-version>
        <kxml2-bundle-version>2.3.0_3</kxml2-bundle-version>
        <libphonenumber-bundle-version>8.12.10_1</libphonenumber-bundle-version>
        <lucene-bundle-version>8.6.1_1</lucene-bundle-version>
        <lightcouch-bundle-version>0.2.0_1</lightcouch-bundle-version>
        <maven-compiler-plugin-version>3.8.1</maven-compiler-plugin-version>
        <maven-owasp-plugin-version>5.3.1</maven-owasp-plugin-version>
        <maven-surefire-plugin-version>3.0.0-M4</maven-surefire-plugin-version>
        <mockwebserver-version>0.1.7</mockwebserver-version>
        <mustache-guava-version>20.0</mustache-guava-version>
        <mustache-bundle-version>0.9.6_1</mustache-bundle-version>
        <noggit-bundle-version>0.5_1</noggit-bundle-version>
        <objenesis-version>2.6</objenesis-version>
        <okclient-bundle-version>3.14.1_1</okclient-bundle-version>
        <olingo-odata2-core-bundle-version>2.0.11_1</olingo-odata2-core-bundle-version>
        <olingo2-gson-version>2.4</olingo2-gson-version>
        <ognl-bundle-version>3.1.12_1</ognl-bundle-version>
        <opencensus-api-version>0.24.0</opencensus-api-version>
        <oncrpc-version>1.1.3</oncrpc-version>
        <openstack4j-guava-version>17.0</openstack4j-guava-version>
        <ops4j-base-version>1.5.0</ops4j-base-version>
        <oro-bundle-version>2.0.8_6</oro-bundle-version>
        <paranamer-bundle-version>2.8_1</paranamer-bundle-version>
        <pax-cdi-version>1.0.0</pax-cdi-version>
        <pax-exam-version>4.13.4</pax-exam-version>
        <pax-tiny-bundle-version>1.3.2</pax-tiny-bundle-version>
        <pax-logging-version>1.11.2</pax-logging-version>
        <perfmark-version>0.17.0</perfmark-version>
        <protobuf-guava-version>28.2-jre</protobuf-guava-version>
        <protobuf-javanano-version>3.1.0</protobuf-javanano-version>
        <pulsar-bundle-version>2.5.1_1</pulsar-bundle-version>
        <reflections-bundle-version>0.9.12_1</reflections-bundle-version>
        <regexp-bundle-version>1.4_1</regexp-bundle-version>
        <resilience4j-version>1.3.0</resilience4j-version>
        <roaster-version>2.21.1.Final</roaster-version>
        <saxon-bundle-version>9.9.1-6_1</saxon-bundle-version>
        <scribe-bundle-version>1.3.7_1</scribe-bundle-version>
        <serp-bundle-version>1.14.1_1</serp-bundle-version>
        <servicemix-jaxb-version>2.3_2</servicemix-jaxb-version>
        <snappy-version>1.1.7.3</snappy-version>
        <solr-bundle-version>8.6.1_1</solr-bundle-version>
        <spring-batch-bundle-version>4.2.4.RELEASE_1</spring-batch-bundle-version>
        <spring-data-commons-bundle-version>2.3.2.RELEASE_2</spring-data-commons-bundle-version>
        <spring-data-keyvalue-bundle-version>2.3.2.RELEASE_2</spring-data-keyvalue-bundle-version>
        <spring-data-redis-bundle-version>2.3.2.RELEASE_2</spring-data-redis-bundle-version>
        <spring-ldap-bundle-version>2.3.3.RELEASE_1</spring-ldap-bundle-version>
        <spring-ws-bundle-version>3.0.8.RELEASE_1</spring-ws-bundle-version>
        <spring-xml-bundle-version>3.0.7.RELEASE_1</spring-xml-bundle-version>
        <spymemcached-bundle-version>2.5_2</spymemcached-bundle-version> <!-- FIXME cmueller: not in sync! -->
        <spymemcached-version>2.12.0</spymemcached-version>
        <squareup-okhttp-bundle-version>2.7.5_1</squareup-okhttp-bundle-version>
        <squareup-okio-bundle-version>1.15.0_1</squareup-okio-bundle-version>
        <squareup-retrofit2-bundle-version>2.5.0_2</squareup-retrofit2-bundle-version>
        <stax2-api-bundle-version>3.1.4</stax2-api-bundle-version>
        <stax2v4-api-bundle-version>4.2</stax2v4-api-bundle-version>
        <stringtemplate-bundle-version>4.0.8_1</stringtemplate-bundle-version>
        <tagsoup-bundle-version>1.2.1_1</tagsoup-bundle-version>
        <testcontainers-version>1.13.0</testcontainers-version>
        <threetenbp-version>1.4.0</threetenbp-version>
        <tinybundles-version>2.1.1</tinybundles-version>
        <typesafe-config>1.3.4</typesafe-config>
        <twitter4j-bundle-version>4.0.7_1</twitter4j-bundle-version>
        <unix-socket-factory-version>2015-01-27T15-02-14</unix-socket-factory-version>
        <unix-socket-factory-bundle-version>1.0.0</unix-socket-factory-bundle-version>
        <validation-1-api-version>1.1.0.Final</validation-1-api-version>
        <werken-xpath-bundle-version>0.9.4_5</werken-xpath-bundle-version>
        <wsdl4j-bundle-version>1.6.3_1</wsdl4j-bundle-version>
        <xalan-bundle-version>2.7.2_3</xalan-bundle-version>
        <xerces-bundle-version>2.12.0_1</xerces-bundle-version>
        <xmlgraphics-commons-bundle-version>2.3_1</xmlgraphics-commons-bundle-version>
        <xmlresolver-bundle-version>1.2_5</xmlresolver-bundle-version>
        <xpp3-bundle-version>1.1.4c_7</xpp3-bundle-version>
        <xstream-bundle-version>1.4.11.1_1</xstream-bundle-version>
        <zipkin-libthrift-version>0.13.0</zipkin-libthrift-version>
        <zjsonpatch-version>0.3.0</zjsonpatch-version>
        <zookeeper-guava-version>27.1-jre</zookeeper-guava-version>
        <zxing-bundle-version>3.4.0_1</zxing-bundle-version>

    </properties>


    <!-- Comment out the snapshot repositories as we don't need them now -->
    <repositories>
        <repository>
            <id>apache.snapshots</id>
            <url>https://repository.apache.org/snapshots/</url>
            <name>Apache Snapshot Repo</name>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
            <releases>
                <enabled>false</enabled>
            </releases>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>apache.snapshots</id>
            <url>https://repository.apache.org/snapshots/</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
            <releases>
                <enabled>false</enabled>
            </releases>
        </pluginRepository>
    </pluginRepositories>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.apache.camel.karaf</groupId>
                <artifactId>camel-blueprint</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.karaf</groupId>
                <artifactId>camel-blueprint-main</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.karaf</groupId>
                <artifactId>camel-test-blueprint</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.karaf</groupId>
                <artifactId>camel-cxf-blueprint</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.karaf</groupId>
                <artifactId>camel-cxf-transport-blueprint</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.karaf</groupId>
                <artifactId>camel-eventadmin</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.karaf</groupId>
                <artifactId>camel-kura</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.karaf</groupId>
                <artifactId>camel-osgi-activator</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.karaf</groupId>
                <artifactId>camel-paxlogging</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.karaf</groupId>
                <artifactId>camel-servlet-osgi</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.karaf</groupId>
                <artifactId>camel-test-karaf</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.karaf</groupId>
                <artifactId>camel-catalog-provider-karaf</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.karaf</groupId>
                <artifactId>camel-core-osgi</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel.karaf</groupId>
                <artifactId>camel-commands-core</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel</groupId>
                <artifactId>camel-parent</artifactId>
                <version>${camel-version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!-- optional Pax support -->
            <dependency>
                <groupId>org.ops4j.pax.exam</groupId>
                <artifactId>pax-exam</artifactId>
                <version>${pax-exam-version}</version>
            </dependency>
            <dependency>
                <groupId>org.ops4j.pax.exam</groupId>
                <artifactId>pax-exam-junit4</artifactId>
                <version>${pax-exam-version}</version>
            </dependency>
            <dependency>
                <groupId>org.ops4j.pax.exam</groupId>
                <artifactId>pax-exam-container-karaf</artifactId>
                <version>${pax-exam-version}</version>
            </dependency>
            <dependency>
                <groupId>org.ops4j.pax.exam</groupId>
                <artifactId>pax-exam-link-mvn</artifactId>
                <version>${pax-exam-version}</version>
            </dependency>
            <dependency>
                <groupId>org.ops4j.pax.swissbox</groupId>
                <artifactId>pax-swissbox-tinybundles</artifactId>
                <version>${pax-tiny-bundle-version}</version>
            </dependency>
            <dependency>
                <groupId>org.ops4j.pax.exam</groupId>
                <artifactId>pax-exam-invoker-junit</artifactId>
                <version>${pax-exam-version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <defaultGoal>install</defaultGoal>

        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>${maven-compiler-plugin-version}</version>
                <configuration>
                    <source>${jdk.version}</source>
                    <target>${jdk.version}</target>
                    <maxmem>512M</maxmem>
                    <fork>${compiler.fork}</fork>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <configuration>
                    <attach>true</attach>
                    <source>${jdk.version}</source>
                    <quiet>true</quiet>
                    <bottom>Apache Camel</bottom>
                    <detectOfflineLinks>false</detectOfflineLinks>
                    <javadocVersion>1.8.0</javadocVersion>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <configuration>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
        </plugins>

        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <version>${maven-javadoc-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-eclipse-plugin</artifactId>
                    <version>2.10</version>
                    <dependencies>
                        <dependency>
                            <groupId>org.apache.camel</groupId>
                            <artifactId>camel-buildtools</artifactId>
                            <version>${camel-version}</version>
                        </dependency>
                    </dependencies>
                    <configuration>
                        <downloadSources>true</downloadSources>
                        <downloadJavadocs>false</downloadJavadocs>
                    </configuration>
                </plugin>

                <plugin>
                    <groupId>org.apache.rat</groupId>
                    <artifactId>apache-rat-plugin</artifactId>
                    <configuration>
                        <excludeSubProjects>false</excludeSubProjects>
                        <excludes>
                            <exclude>**/generated/**</exclude>
                            <exclude>**/generated.txt</exclude>
                            <exclude>**/*.mvel</exclude>
                            <exclude>**/catalog/*.properties</exclude>
                            <exclude>**/*.json</exclude>
                            <exclude>**/README</exclude>
                            <exclude>**/README.txt</exclude>
                            <exclude>**/README.md</exclude>
                            <exclude>**/ReadMe.md</exclude>
                            <exclude>**/resources/**/*.xsd</exclude>
                            <exclude>**/webapp/js/**/*</exclude>
                            <exclude>**/test/resources/**/*</exclude>
                            <exclude>**/test/data*/**/*</exclude>
                            <exclude>.gitignore</exclude>
                            <exclude>.git/**/*</exclude>
                            <exclude>**/*.adoc</exclude>
                            <exclude>**/*.adoc.template</exclude>
                            <exclude>**/*.md</exclude>
                            <exclude>**/*.sh</exclude>
                            <exclude>**/*.bat</exclude>
                            <exclude>**/java9-maven-settings</exclude>
                            <exclude>**/*.pfx</exclude>
                            <!-- tooling json-simple parser -->
                            <exclude>**/src/main/java/org/json/simple/**</exclude>
                            <!-- tooling/camel-manual/src/styles/print.css use a different license -->
                            <exclude>**/src/styles/print.css</exclude>
                            <!-- tooling for component docs -->
                            <exclude>**/component-header.mvel</exclude>
                            <exclude>**/component-options.mvel</exclude>
                            <exclude>**/endpoint-options.mvel</exclude>
                            <exclude>**/dataformat-options.mvel</exclude>
                            <exclude>**/eip-options.mvel</exclude>
                            <exclude>**/language-options.mvel</exclude>
                            <exclude>**/website-components-list.mvel</exclude>
                            <exclude>**/website-languages-list.mvel</exclude>
                            <exclude>**/website-others-list.mvel</exclude>
                            <exclude>**/website-dataformats-list.mvel</exclude>
                            <exclude>**/readme-examples.mvel</exclude>
                            <exclude>**/spring-boot-auto-configure-options.mvel</exclude>
                            <exclude>**/camel-NOTICE.txt</exclude>
                            <exclude>**/spring-boot-starter-NOTICE.txt</exclude>
                            <!-- cxf does not handle comments here -->
                            <exclude>**/src/main/resources/META-INF/cxf/cxf.extension</exclude>
                            <exclude>**/src/main/resources/META-INF/cxf/bus-extensions.txt</exclude>
                            <!-- ignore the api signatures files -->
                            <exclude>**/src/signatures/*.txt</exclude>
                            <!-- camel-salesforce BSD license from salesforce developers -->
                            <exclude>**/CometDReplayExtension.java</exclude>
                            <exclude>**/LICENSE-SALESFORCE.txt</exclude>
                            <!-- camel-as2 -->
                            <exclude>**/mdnDescription.vm</exclude>
                            <!-- camel-jbpm -->
                            <exclude>**/src/main/resources/*.wid</exclude>
                            <!-- camel website and user-manual -->
                            <exclude>**/node/**</exclude>
                            <exclude>**/node_modules/**</exclude>
                            <exclude>**/user-manual/**</exclude>
                            <exclude>**/yarn.lock</exclude>
                            <!-- examples -->
                            <exclude>**/fabric8/*.yaml</exclude>
                            <exclude>**/src/main/data/*.patient</exclude>
                            <exclude>**/src/main/data/*.csv</exclude>
                            <exclude>**/src/main/resources/avro/*.avsc</exclude>
                            <!-- generated files -->
                            <exclude>**/target/**/*</exclude>
                            <exclude>**/eclipse-classes/**/*</exclude>
                            <exclude>**/.*</exclude>
                            <exclude>**/.settings/**/*</exclude>
                            <exclude>**/*.iml</exclude>
                            <exclude>**/.idea/**/*</exclude>
                            <exclude>**/avro/**/*.avpr</exclude>
                            <exclude>**/OSGI-INF/bundle.info</exclude>
                            <exclude>**/test_rsa*</exclude>
                            <exclude>**/data*/**/*.xml</exclude>
                            <exlucde>**/*.log</exlucde>
                            <exclude>**/id_file</exclude>
                            <exclude>**/dependency-reduced-pom.xml</exclude>
                            <exclude>**/Dropbox_API_Terms_and_Conditions.txt</exclude>
                            <exclude>**/MerchandiseRestResource.apxc</exclude>
                            <exclude>**/file-sig-api.txt</exclude>
                            <exclude>**/Tasks__c.java</exclude>
                            <exclude>**/*.proto</exclude>
                            <exclude>
                                **/src/main/resources/META-INF/services/org.kie.server.services.api.KieServerExtension
                            </exclude>
                            <!-- Maven Wrapper -->
                            <exclude>.mvn/**/*</exclude>
                        </excludes>
                    </configuration>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-release-plugin</artifactId>
                    <!-- see https://issues.apache.org/jira/browse/MRELEASE-812 -->
                    <version>2.4.2</version>
                    <dependencies>
                        <dependency>
                            <groupId>org.apache.maven.scm</groupId>
                            <artifactId>maven-scm-provider-gitexe</artifactId>
                            <version>1.9</version>
                        </dependency>
                    </dependencies>
                    <configuration>
                        <localCheckout>true</localCheckout>
                        <pushChanges>true</pushChanges>
                        <tagNameFormat>@{project.artifactId}-@{project.version}</tagNameFormat>
                        <useReleaseProfile>false</useReleaseProfile>
                        <preparationGoals>clean install</preparationGoals>
                        <goals>deploy</goals>
                        <!-- The profile we want to use when doing the release -->
                        <arguments>-Prelease,apache-release,sourcecheck</arguments>
                        <autoVersionSubmodules>true</autoVersionSubmodules>
                    </configuration>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-remote-resources-plugin</artifactId>
                    <executions>
                        <execution>
                            <id>process-resource-bundles</id>
                            <phase>disabled</phase>
                        </execution>
                    </executions>
                </plugin>

                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>flatten-maven-plugin</artifactId>
                    <version>1.1.0</version>
                    <executions>
                        <execution>
                            <id>default-cli</id>
                            <phase>process-resources</phase>
                            <goals>
                                <goal>flatten</goal>
                            </goals>
                            <configuration>
                                <updatePomFile>true</updatePomFile>
                                <pomElements>
                                    <build>keep</build>
                                    <dependencyManagement>keep</dependencyManagement>
                                    <description>keep</description>
                                    <name>keep</name>
                                    <parent>expand</parent>
                                    <pluginManagement>keep</pluginManagement>
                                    <profiles>remove</profiles>
                                    <properties>keep</properties>
                                </pomElements>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>

                <plugin>
                    <artifactId>maven-invoker-plugin</artifactId>
                    <configuration>
                        <skipInstallation>${invoker.skip}</skipInstallation>
                        <skipInvocation>${invoker.skip}</skipInvocation>
                        <mavenOpts>-Xmx64m -XshowSettings</mavenOpts>
                        <showVersion>true</showVersion>
                    </configuration>
                </plugin>

                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>exec-maven-plugin</artifactId>
                    <version>${exec-maven-plugin-version}</version>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>${maven-surefire-plugin-version}</version>
                    <configuration>
                        <!--forkMode>pertest</forkMode -->
                        <forkedProcessTimeoutInSeconds>300</forkedProcessTimeoutInSeconds>
                        <childDelegation>false</childDelegation>
                        <useFile>true</useFile>
                        <failIfNoTests>false</failIfNoTests>
                        <runOrder>alphabetical</runOrder>
                        <!-- lets re-run the failed test one more time, just to be sure -->
                        <rerunFailingTestsCount>2</rerunFailingTestsCount>
                        <systemPropertyVariables>
                            <javax.xml.accessExternalSchema>file,http,https</javax.xml.accessExternalSchema>
                            <javax.xml.accessExternalDTD>file,http</javax.xml.accessExternalDTD>
                            <derby.stream.error.file>target/derby.log</derby.stream.error.file>
                            <java.awt.headless>${java.awt.headless}</java.awt.headless>
                            <java.util.logging.config.file>${basedir}/target/test-classes/logging.properties
                            </java.util.logging.config.file>
                            <org.apache.activemq.default.directory.prefix>target/
                            </org.apache.activemq.default.directory.prefix>
                        </systemPropertyVariables>
                        <includes>
                            <include>**/*Test.java</include>
                        </includes>
                        <excludes>
                            <exclude>**/*IntegrationTest.java</exclude>
                            <exclude>**/*XXXTest.*</exclude>
                        </excludes>
                    </configuration>
                </plugin>

                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>build-helper-maven-plugin</artifactId>
                    <version>${build-helper-maven-plugin-version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.servicemix.tooling</groupId>
                    <artifactId>depends-maven-plugin</artifactId>
                    <version>1.2</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>jaxb2-maven-plugin</artifactId>
                    <version>${jaxb2-maven-plugin-version}</version>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>

    <profiles>
        <profile>
            <id>dev</id>
            <properties>
                <camel-version>3.6.0</camel-version>
            </properties>
        </profile>

        <profile>
            <id>fastinstall</id>
            <activation>
                <property>
                    <name>fastinstall</name>
                </property>
            </activation>
            <properties>
                <maven.test.skip.exec>true</maven.test.skip.exec>
                <assembly.skipAssembly>true</assembly.skipAssembly>
                <fastinstall>true</fastinstall>
                <noassembly>true</noassembly>
            </properties>
        </profile>

        <profile>
            <id>setup.eclipse</id>
            <!-- set up the eclipse workspace and generate the .classpath and .project
              files for modules -->
            <properties>
                <eclipse.workspace.dir>${basedir}/../workspace</eclipse.workspace.dir>
                <maven.test.skip.exec>true</maven.test.skip.exec>
            </properties>
            <build>
                <defaultGoal>package</defaultGoal>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-compiler-plugin</artifactId>
                            <version>${maven-compiler-plugin-version}</version>
                            <configuration>
                                <source>${jdk.version}</source>
                                <target>${jdk.version}</target>
                                <maxmem>512M</maxmem>
                                <fork>${compiler.fork}</fork>
                            </configuration>
                        </plugin>
                    </plugins>
                </pluginManagement>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-eclipse-plugin</artifactId>
                        <inherited>false</inherited>
                        <executions>
                            <execution>
                                <id>setup.eclipse.workspace</id>
                                <phase>process-test-sources</phase>
                                <goals>
                                    <goal>configure-workspace</goal>
                                </goals>
                                <configuration>
                                    <workspace>${eclipse.workspace.dir}</workspace>
                                    <workspaceCodeStylesURL>file:etc/eclipse/CamelCodeFormatter.xml
                                    </workspaceCodeStylesURL>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-antrun-plugin</artifactId>
                        <inherited>false</inherited>
                        <executions>
                            <execution>
                                <id>setup.workspace</id>
                                <phase>validate</phase>
                                <configuration>
                                    <target>
                                        <path id="ecp.ws.path" location="${eclipse.workspace.dir}" />
                                        <property name="full.eclipse.workspace" refid="ecp.ws.path" />
                                        <path path="${basedir}/etc" id="etc.path" />

                                        <path id="buildtools.classpath">
                                            <fileset dir="${basedir}/buildingtools/target" includes="*.jar" />
                                            <pathelement location="${basedir}/buildingtools/target/classes" />
                                            <pathelement location="${basedir}/buildingtools/src/main/resources" />
                                        </path>

                                        <whichresource resource="/camel-eclipse-pmd" property="pmd.url" classpathref="buildtools.classpath" />
                                        <whichresource resource="/camel-pmd-ruleset.xml" property="pmdruleset.url" classpathref="buildtools.classpath" />
                                        <whichresource resource="/camel-eclipse-checkstyle" property="eclipse.checkstyle.url" classpathref="buildtools.classpath" />
                                        <whichresource resource="/camel-checkstyle.xml" property="checkstyle.url" classpathref="buildtools.classpath" />

                                        <mkdir dir="${full.eclipse.workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings" />
                                        <mkdir dir="${full.eclipse.workspace}/.metadata/.plugins/net.sf.eclipsecs.core" />
                                        <mkdir dir="${full.eclipse.workspace}/.metadata/.plugins/net.sourceforge.pmd.eclipse" />

                                        <get src="${checkstyle.url}" dest="${full.eclipse.workspace}/camel-checkstyle.xml" />

                                        <!-- Add checkstyle config -->
                                        <copy file="${basedir}/etc/eclipse/template.checkstyle-config.xml" tofile="${full.eclipse.workspace}/.metadata/.plugins/net.sf.eclipsecs.core/checkstyle-config.xml" overwrite="no">
                                            <filterset>
                                                <filter token="CHECKSTYLE_CONFIG_FILE" value="${full.eclipse.workspace}/camel-checkstyle.xml" />
                                                <filter token="APACHE_HEADER_FILE" value="${full.eclipse.workspace}/apache-header.txt" />
                                            </filterset>
                                        </copy>

                                        <xslt style="${basedir}/etc/eclipse/addcheckstyle.xsl" in="${full.eclipse.workspace}/.metadata/.plugins/net.sf.eclipsecs.core/checkstyle-config.xml" out="${full.eclipse.workspace}/.metadata/.plugins/net.sf.eclipsecs.core/checkstyle-config.xml.new">
                                            <param name="checkstyleconfig" expression="${full.eclipse.workspace}/camel-checkstyle.xml" />
                                        </xslt>
                                        <copy file="${full.eclipse.workspace}/.metadata/.plugins/net.sf.eclipsecs.core/checkstyle-config.xml.new" tofile="${full.eclipse.workspace}/.metadata/.plugins/net.sf.eclipsecs.core/checkstyle-config.xml" overwrite="yes" />

                                        <!-- Add code format rules -->
                                        <concat destfile="${full.eclipse.workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs" append="true" fixlastline="true">
                                            <filelist dir="${basedir}/etc/eclipse" files="org.eclipse.jdt.core.prefs" />
                                        </concat>
                                        <loadfile property="eclipse.code.format" srcFile="${basedir}/etc/eclipse/CamelCodeFormatter.xml" />
                                        <loadfile property="eclipse.code.templates" srcFile="${basedir}/etc/eclipse/codetemplates.xml" />
                                        <loadfile property="eclipse.camel.java.code.templates" srcFile="${basedir}/etc/eclipse/camel_java_templates.xml" />
                                        <loadfile property="eclipse.camel.xml.code.templates" srcFile="${basedir}/etc/eclipse/camel_xml_templates.xml" />
                                        <propertyfile file="${full.eclipse.workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs">
                                            <entry key="formatter_profile" value="Camel Java Conventions" />
                                            <entry key="org.eclipse.jdt.ui.formatterprofiles" value="${eclipse.code.format}" />
                                            <entry key="org.eclipse.jdt.ui.text.custom_code_templates" value="${eclipse.code.templates}" />

                                            <!-- Add Camel templates for Java DSL -->
                                            <entry key="org.eclipse.jdt.ui.text.custom_templates" value="${eclipse.camel.java.code.templates}" />

                                            <!-- Add import order -->
                                            <entry key="org.eclipse.jdt.ui.importorder" value="java;javax;org.w3c;org.xml;w3c;" />
                                            <!-- Sort order -->
                                            <entry key="org.eclipse.jdt.ui.visibility.order" value="B,R,D,V," />
                                            <entry key="outlinesortoption" value="T,SF,F,SI,I,C,SM,M," />
                                            <entry key="org.eclipse.jdt.ui.enable.visibility.order" value="true" />
                                        </propertyfile>
                                        <propertyfile file="${full.eclipse.workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.wst.xml.ui.prefs">
                                            <entry key="eclipse.preferences.version" value="1" />
                                            <!-- Add Camel templates for Spring DSL -->
                                            <entry key="org.eclipse.wst.sse.ui.custom_templates" value="${eclipse.camel.xml.code.templates}" />
                                        </propertyfile>
                                    </target>
                                </configuration>
                                <goals>
                                    <goal>run</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>

        <profile>
            <!-- When not on the Mac, we need to add tools.jar to the antrun plugin
              for schemagen to work -->
            <id>not-mac</id>
            <activation>
                <os>
                    <family>!mac</family>
                </os>
            </activation>
            <build>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-antrun-plugin</artifactId>
                            <dependencies>
                                <dependency>
                                    <groupId>com.sun.xml.bind</groupId>
                                    <artifactId>jaxb-core</artifactId>
                                    <version>${jaxb-version}</version>
                                </dependency>
                                <dependency>
                                    <groupId>com.sun.xml.bind</groupId>
                                    <artifactId>jaxb-impl</artifactId>
                                    <version>${jaxb-version}</version>
                                </dependency>
                                <dependency>
                                    <groupId>com.sun.xml.bind</groupId>
                                    <artifactId>jaxb-jxc</artifactId>
                                    <version>${jaxb-version}</version>
                                </dependency>
                                <dependency>
                                    <groupId>xerces</groupId>
                                    <artifactId>xercesImpl</artifactId>
                                    <version>2.11.0</version>
                                </dependency>
                                <dependency>
                                    <groupId>ant-contrib</groupId>
                                    <artifactId>ant-contrib</artifactId>
                                    <version>1.0b3</version>
                                    <exclusions>
                                        <exclusion>
                                            <groupId>ant</groupId>
                                            <artifactId>ant</artifactId>
                                        </exclusion>
                                    </exclusions>
                                </dependency>
                                <dependency>
                                    <groupId>org.apache.ant</groupId>
                                    <artifactId>ant-trax</artifactId>
                                    <version>1.8.0</version>
                                </dependency>
                                <dependency>
                                    <groupId>org.apache.ant</groupId>
                                    <artifactId>ant-nodeps</artifactId>
                                    <version>1.8.1</version>
                                </dependency>
                            </dependencies>
                        </plugin>
                    </plugins>
                </pluginManagement>
            </build>
        </profile>

        <profile>
            <id>jdk8-build</id>
            <activation>
                <jdk>(,1.9)</jdk>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-antrun-plugin</artifactId>
                        <dependencies>
                            <dependency>
                                <groupId>com.sun</groupId>
                                <artifactId>tools</artifactId>
                                <version>1.5.0</version>
                                <scope>system</scope>
                                <systemPath>${java.home}/../lib/tools.jar</systemPath>
                            </dependency>
                        </dependencies>
                    </plugin>
                </plugins>
            </build>
        </profile>

        <profile>
            <id>deploy</id>
            <build>
                <defaultGoal>deploy</defaultGoal>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-source-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>attach-sources</id>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>attach-javadocs</id>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                                <configuration>
                                    <additionalOptions>${javadoc.opts}</additionalOptions>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>

        <profile>
            <id>source-jar</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-source-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>attach-sources</id>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>release</id>
            <activation>
                <property>
                    <name>release</name>
                </property>
            </activation>
            <build>
                <plugins>
                    <!-- We want to deploy the artifact to a staging location for perusal -->
                    <plugin>
                        <inherited>true</inherited>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-deploy-plugin</artifactId>
                        <configuration>
                            <updateReleaseInfo>true</updateReleaseInfo>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-source-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>attach-sources</id>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <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>
                            <additionalOptions>${javadoc.opts}</additionalOptions>
                        </configuration>
                    </plugin>
                    <!-- We want to sign the artifact, the POM, and all attached artifacts -->
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <configuration>
                            <passphrase>${gpg.passphrase}</passphrase>
                            <useAgent>${gpg.useagent}</useAgent>
                        </configuration>
                        <executions>
                            <execution>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-enforcer-plugin</artifactId>
                    <version>3.0.0-M3</version>
                    <executions>
                        <execution>
                            <id>enforce-maven</id>
                            <goals>
                                <goal>enforce</goal>
                            </goals>
                            <configuration>
                            <rules>
                                <requireMavenVersion>
                                    <version>3.5.0</version>
                                </requireMavenVersion>
                            </rules>    
                            </configuration>
                       </execution>
                  </executions>
               </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>doclint-java8-disable</id>
            <activation>
                <jdk>[1.8,)</jdk>
            </activation>
            <properties>
                <javadoc.opts>-Xdoclint:none</javadoc.opts>
            </properties>
        </profile>

        <profile>
            <id>cleanrepo</id>
            <build>
                <defaultGoal>build-helper:remove-project-artifact</defaultGoal>
            </build>
        </profile>

        <profile>
            <id>license</id>
            <build>
                <defaultGoal>license:format</defaultGoal>
                <plugins>
                    <plugin>
                        <groupId>com.mycila</groupId>
                        <artifactId>license-maven-plugin</artifactId>
                        <version>${mycila-license-version}</version>
                        <configuration>
                            <header>header.txt</header>
                            <excludes>
                                <exclude>KEYS</exclude>
                                <exclude>**/NOTICE</exclude>
                                <exclude>**/LICENSE</exclude>
                                <exclude>**/NOTICE.txt</exclude>
                                <exclude>**/LICENSE.txt</exclude>
                                <exclude>doap.rdf</exclude>
                                <exclude>**/README</exclude>
                                <exclude>**/*.adoc</exclude>
                                <exclude>**/node_modules/**</exclude>
                                <exclude>**/cacerts</exclude>
                                <exclude>**/*.p12</exclude>
                                <exclude>**/*.txt</exclude>
                                <exclude>.mvn/**</exclude>
                                <exclude>mvnw*</exclude>
                                <exclude>**/META-INF/persistence*.xsd</exclude>
                            </excludes>
                            <mapping>
                                <java>SLASHSTAR_STYLE</java>
                                <properties>CAMEL_PROPERTIES_STYLE</properties>
                                <spring.factories>CAMEL_PROPERTIES_STYLE</spring.factories>
                                <spring.provides>CAMEL_PROPERTIES_STYLE</spring.provides>
                            </mapping>
                            <headerDefinitions>
                                <headerDefinition>license-properties-headerdefinition.xml</headerDefinition>
                            </headerDefinitions>
                        </configuration>
                        <dependencies>
                            <dependency>
                                <groupId>org.apache.camel</groupId>
                                <artifactId>camel-buildtools</artifactId>
                                <version>${camel-version}</version>
                            </dependency>
                        </dependencies>
                    </plugin>
                </plugins>
            </build>
        </profile>

    </profiles>
</project>
