<?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</groupId>
        <artifactId>apache</artifactId>
        <version>19</version>
    </parent>
    <groupId>org.apache.ranger</groupId>
    <artifactId>ranger</artifactId>
    <version>1.1.0</version>
    <description>Security for Enforcing Enterprise Policies</description>
    <packaging>pom</packaging>
    <name>ranger</name>
    <url>http://ranger.apache.org/</url>
    <licenses>
        <license>
            <name>Apache 2.0 License</name>
            <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
            <distribution>repo</distribution>
        </license>
    </licenses>
    <scm>
        <connection>scm:git:git@github.com:apache/ranger.git</connection>
        <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/ranger.git</developerConnection>
        <url>scm:git:git@github.com:apache/ranger.git</url>
        <tag>HEAD</tag>
    </scm>
    <issueManagement>
        <system>JIRA</system>
        <url>https://issues.apache.org/jira/browse/ranger</url>
    </issueManagement>
    <prerequisites>
        <maven>3.0.1</maven>
    </prerequisites>
    <mailingLists>
        <mailingList>
            <name>Dev Mailing List</name>
            <post>dev@ranger.apache.org</post>
            <subscribe>dev-subscribe@ranger.apache.org</subscribe>
            <unsubscribe>dev-unsubscribe@ranger.apache.org</unsubscribe>
        </mailingList>
        <mailingList>
            <name>User Mailing List</name>
            <post>user@ranger.apache.org</post>
            <subscribe>user-subscribe@ranger.apache.org</subscribe>
            <unsubscribe>user-unsubscribe@ranger.apache.org</unsubscribe>
        </mailingList>
        <mailingList>
            <name>Commits Mailing List</name>
            <post>commits@ranger.apache.org</post>
            <subscribe>commits-subscribe@ranger.apache.org</subscribe>
            <unsubscribe>commits-unsubscribe@ranger.apache.org</unsubscribe>
        </mailingList>
    </mailingLists>
    <modules>
        <module>jisql</module>
        <module>agents-audit</module>
        <module>agents-common</module>
        <module>agents-cred</module>
        <module>agents-installer</module>
        <module>credentialbuilder</module>
        <module>embeddedwebserver</module>
        <module>kms</module>
        <module>hbase-agent</module>
        <module>hdfs-agent</module>
        <module>hive-agent</module>
        <module>knox-agent</module>
        <module>storm-agent</module>
        <module>plugin-yarn</module>
        <module>security-admin</module>
        <module>plugin-kafka</module>
        <module>plugin-solr</module>
	    <module>plugin-nifi</module>
        <module>ugsync</module>
        <module>ugsync/ldapconfigchecktool/ldapconfigcheck</module>
        <module>unixauthclient</module>
        <module>unixauthservice</module>
        <module>ranger-util</module>
        <module>plugin-kms</module>
        <module>tagsync</module>
        <module>ranger-hdfs-plugin-shim</module>
        <module>ranger-plugin-classloader</module>
        <module>ranger-hive-plugin-shim</module>
        <module>ranger-hbase-plugin-shim</module>
        <module>ranger-knox-plugin-shim</module>
        <module>ranger-yarn-plugin-shim</module>
        <module>ranger-storm-plugin-shim</module>
        <module>ranger-kafka-plugin-shim</module>
        <module>ranger-solr-plugin-shim</module>
        <module>ranger-atlas-plugin-shim</module>
        <module>ranger-kms-plugin-shim</module>
        <module>ranger-examples</module>
        <module>ranger-tools</module>
        <module>plugin-atlas</module>
        <module>plugin-sqoop</module>
        <module>ranger-sqoop-plugin-shim</module>
        <module>plugin-kylin</module>
        <module>ranger-kylin-plugin-shim</module>
  </modules>
    <properties>
        <maven.version.required>3.3.3</maven.version.required>
        <java.version.required>1.8</java.version.required>
        <javac.source.version>1.8</javac.source.version>
        <javac.target.version>1.8</javac.target.version>
        <distMgmtStagingId>apache.staging.https</distMgmtStagingId>
        <distMgmtStagingName>Apache Release Distribution Repository</distMgmtStagingName>
        <distMgmtStagingUrl>https://repository.apache.org/service/local/staging/deploy/maven2</distMgmtStagingUrl>
        <!-- versions are in alphabetical order -->
        <antlr.version>3.5.2</antlr.version>
        <aopalliance.version>1.0</aopalliance.version>
        <apacheds.version>2.0.0-M22</apacheds.version>
        <asm.all.version>3.2</asm.all.version>
        <aspectj.version>1.8.2</aspectj.version>
        <atlas.version>2.0.0-SNAPSHOT</atlas.version>
        <atlas.guava.version>14.0</atlas.guava.version>
        <atlas.gson.version>2.5</atlas.gson.version>
        <atlas.jackson.version>2.9.2</atlas.jackson.version>
        <atlas.jettison.version>1.3.7</atlas.jettison.version>
        <atlas.commons.compress.version>1.4.1</atlas.commons.compress.version>
        <atlas.commons.logging.version>1.1.3</atlas.commons.logging.version>
        <bouncycastle.version>1.55</bouncycastle.version>
        <c3p0.version>0.9.1.2</c3p0.version>
        <cglib.version>2.2.0-b23</cglib.version>
        <codehaus.jackson.version>1.9.13</codehaus.jackson.version>
        <commons.beanutils.version>1.9.3</commons.beanutils.version>
        <commons.cli.version>1.2</commons.cli.version>
        <commons.codec.version>1.9</commons.codec.version>
        <commons.collections.version>3.2.2</commons.collections.version>
        <commons.compress.version>1.8.1</commons.compress.version>
        <commons.configuration.version>1.10</commons.configuration.version>
        <commons.dbcp.version>1.4</commons.dbcp.version>
        <commons.digester.version>2.1</commons.digester.version>
        <commons.io.version>2.4</commons.io.version>
        <commons.lang.version>2.6</commons.lang.version>
        <commons.logging.version>1.2</commons.logging.version>
        <commons.math.version>2.2</commons.math.version>
        <commons.net.version>3.3</commons.net.version>
        <commons.pool.version>1.6</commons.pool.version>
        <curator.test.version>2.12.0</curator.test.version>
        <derby.version>10.11.1.1</derby.version>
        <eclipse.jpa.version>2.5.2</eclipse.jpa.version>
        <findbugs.plugin.version>3.0.3</findbugs.plugin.version>
        <google.guava.version>17.0</google.guava.version>
        <googlecode.log4jdbc.version>1.2</googlecode.log4jdbc.version>
        <gson.version>2.2.4</gson.version>
        <guava.version>11.0.2</guava.version>
        <guice.version>4.0</guice.version>
        <hadoop.version>2.7.1</hadoop.version>
        <hamcrest.all.version>1.3</hamcrest.all.version>
        <hbase.version>1.3.2</hbase.version>
        <hive.version>2.3.2</hive.version>
        <htrace-core.version>3.1.0-incubating</htrace-core.version>
        <httpcomponents.httpclient.version>4.5.3</httpcomponents.httpclient.version>
        <httpcomponents.httpcore.version>4.4.6</httpcomponents.httpcore.version>
        <httpcomponents.httpmime.version>4.5.3</httpcomponents.httpmime.version>
        <javax.persistence.version>2.1.0</javax.persistence.version>
        <javax.servlet.version>3.1.0</javax.servlet.version>
        <javax-inject.version>1</javax-inject.version>
        <jericho.html.version>3.3</jericho.html.version>
        <jersey-bundle.version>1.19.3</jersey-bundle.version>
        <jersey-client.version>2.6</jersey-client.version>
        <jersey-core.version>1.19.3</jersey-core.version>
        <jersey-server.version>1.19.3</jersey-server.version>
        <jersey-spring.version>1.19.3</jersey-spring.version>
        <jettison.version>1.1</jettison.version>
        <jline.version>0.9.94</jline.version>
        <json4s.version>3.2.11</json4s.version>
        <jsr305.version>1.3.9</jsr305.version>
        <junit.version>4.12</junit.version>
        <kafka.version>1.0.0</kafka.version>
        <kerby.version>1.0.0</kerby.version>
        <knox.gateway.version>1.0.0</knox.gateway.version>
        <kylin.version>2.3.0</kylin.version>
        <libpam4j.version>1.10</libpam4j.version>
        <local.lib.dir>${project.basedir}/../lib/local</local.lib.dir>
        <log4j.version>1.2.17</log4j.version>
        <metrics.core.version>3.0.2</metrics.core.version>
        <mockito.version>2.7.22</mockito.version>
        <mysql-connector-java.version>5.1.31</mysql-connector-java.version>
        <netty.version>3.10.5.Final</netty.version>
        <noggit.version>0.6</noggit.version>
        <owasp-java-html-sanitizer.version>r239</owasp-java-html-sanitizer.version>
        <paranamer.version>2.3</paranamer.version>
        <poi.version>3.17</poi.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <protobuf-java.version>2.5.0</protobuf-java.version>
        <scala.version>2.11.12</scala.version>
        <scala.binary.version>2.11</scala.binary.version>
        <scala.xml.version>1.0.4</scala.xml.version>
        <security-agent-install-dir>hadoop-security/plugins</security-agent-install-dir>
        <servlet.api.version>2.5</servlet.api.version>
        <slf4j-api.version>1.7.5</slf4j-api.version>
        <solr.version>5.5.4</solr.version>
        <spring-ldap-core.version>2.3.2.RELEASE</spring-ldap-core.version>
        <springframework.security.version>4.2.4.RELEASE</springframework.security.version>
        <springframework.test.version>4.3.14.RELEASE</springframework.test.version>
        <springframework.version>4.3.14.RELEASE</springframework.version>
        <sqoop.version>1.99.7</sqoop.version>
        <storm.version>1.2.0</storm.version>
        <sun-jersey-bundle.version>1.19</sun-jersey-bundle.version>
        <tomcat.embed.version>7.0.85</tomcat.embed.version>
        <velocity.version>1.7</velocity.version>
        <zookeeper.version>3.4.6</zookeeper.version>
    </properties>
    <profiles>
        <profile>
            <id>linux</id>
            <activation>
                <os>
                    <family>linux</family>
                </os>
            </activation>
            <modules>
                <module>unixauthnative</module>
            </modules>
        </profile>
        <profile>
            <id>linux-pam</id>
            <activation>
                <os>
                    <family>linux</family>
                </os>
				<file>
					<exists>/usr/include/security/pam_appl.h</exists>
				</file>
            </activation>
            <modules>
                <module>unixauthpam</module>
            </modules>
        </profile>
        <profile>
            <id>sign-artifacts</id>
            <activation>
                <property>
                    <name>sign-artifacts</name>
                    <value>true</value>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <version>1.6</version>
                        <executions>
                            <execution>
                                <id>sign-artifacts</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
    <distributionManagement>
        <repository>
            <id>${distMgmtStagingId}</id>
            <name>${distMgmtStagingName}</name>
            <url>${distMgmtStagingUrl}</url>
        </repository>
    </distributionManagement>
    <repositories>
        <repository>
            <id>apache.snapshots.https</id>
            <name>Apache Development Snapshot Repository</name>
            <url>https://repository.apache.org/content/repositories/snapshots</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>apache.public.https</id>
            <name>Apache Development Snapshot Repository</name>
            <url>https://repository.apache.org/content/repositories/public</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <!--
    <repository>
      <id>repo</id>
      <url>file://${basedir}/local-repo</url>
      <snapshots>
         <enabled>true</enabled>
      </snapshots>
  </repository>
  -->
    </repositories>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>${junit.version}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>${mysql-connector-java.version}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.mockito</groupId>
                <artifactId>mockito-core</artifactId>
                <version>${mockito.version}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.hamcrest</groupId>
                <artifactId>hamcrest-all</artifactId>
                <version>${hamcrest.all.version}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.glassfish.jersey.core</groupId>
                <artifactId>jersey-client</artifactId>
                <version>${jersey-client.version}</version>
            </dependency>
            <dependency>
                <groupId>com.google.code.gson</groupId>
                <artifactId>gson</artifactId>
                <version>${gson.version}</version>
            </dependency>
			<dependency>
				<groupId>com.webcohesion.enunciate</groupId>
				<artifactId>enunciate-core-annotations</artifactId>
				<version>2.10.1</version>
			</dependency>
			<dependency>
				<groupId>commons-beanutils</groupId>
				<artifactId>commons-beanutils</artifactId>
				<version>${commons.beanutils.version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.hbase</groupId>
				<artifactId>hbase-client</artifactId>
				<version>${hbase.version}</version>
			</dependency>
		</dependencies>
    </dependencyManagement>
    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>build-helper-maven-plugin</artifactId>
                    <version>1.9.1</version>
                </plugin>
                <plugin>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.3</version>
                    <configuration>
                        <useIncrementalCompilation>false</useIncrementalCompilation>
                        <source>${javac.source.version}</source>
                        <target>${javac.target.version}</target>
                        <encoding>UTF-8</encoding>
                        <maxmem>1024m</maxmem>
                        <fork>true</fork>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>2.7</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.20.1</version>
                    <configuration>
                        <argLine>-Djava.library.path="${hadoop.library.path}${path.separator}${java.library.path}"</argLine>
                        <skipTests>${skipTests}</skipTests>
                        <encoding>UTF-8</encoding>
                        <systemProperties>
                            <property>
                                <name>logdir</name>
                                <value>${project.build.directory}</value>
                            </property>
                            <property>
                                <name>catalina.base</name>
                                <value>${project.build.directory}</value>
                            </property>
                        </systemProperties>
                    </configuration>
                </plugin>
                <plugin>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <version>2.2-beta-5</version>
                    <configuration>
                        <descriptors>
                            <descriptor>src/main/assembly/hdfs-agent.xml</descriptor>
                            <descriptor>src/main/assembly/hive-agent.xml</descriptor>
                            <descriptor>src/main/assembly/hbase-agent.xml</descriptor>
                            <descriptor>src/main/assembly/knox-agent.xml</descriptor>
                            <descriptor>src/main/assembly/storm-agent.xml</descriptor>
                            <descriptor>src/main/assembly/plugin-kafka.xml</descriptor>
                            <descriptor>src/main/assembly/plugin-yarn.xml</descriptor>
                            <descriptor>src/main/assembly/plugin-solr.xml</descriptor>
                            <descriptor>src/main/assembly/admin-web.xml</descriptor>
                            <descriptor>src/main/assembly/usersync.xml</descriptor>
                            <descriptor>src/main/assembly/tagsync.xml</descriptor>
                            <descriptor>src/main/assembly/migration-util.xml</descriptor>
                            <descriptor>src/main/assembly/kms.xml</descriptor>
                            <descriptor>src/main/assembly/ranger-tools.xml</descriptor>
                            <descriptor>src/main/assembly/ranger-src.xml</descriptor>
                            <descriptor>src/main/assembly/plugin-atlas.xml</descriptor>
                            <descriptor>src/main/assembly/plugin-sqoop.xml</descriptor>
                            <descriptor>src/main/assembly/plugin-kylin.xml</descriptor>
                        </descriptors>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-jar-plugin</artifactId>
                    <version>3.0.2</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-antrun-plugin</artifactId>
                    <version>1.8</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-source-plugin</artifactId>
                    <version>2.4</version>
                    <configuration>
                        <attach>true</attach>
                    </configuration>
                    <executions>
                        <execution>
                            <id>create-source-jar</id>
                            <goals>
                                <goal>jar-no-fork</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-clean-plugin</artifactId>
                    <version>2.6.1</version>
                    <configuration>
                        <filesets>
                            <fileset>
                                <directory>work</directory>
                            </fileset>
                            <fileset>
                                <directory>checkpoint</directory>
                            </fileset>
                        </filesets>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-release-plugin</artifactId>
                    <version>2.5.2</version>
                </plugin>
				<plugin>
					<groupId>com.webcohesion.enunciate</groupId>
					<artifactId>enunciate-maven-plugin</artifactId>
					<version>2.10.1</version>
					<configuration>
						<configFile>enunciate.xml</configFile>
						<enunciateArtifactId/>
						<docsDir>docs/src/site/</docsDir>
						<source>1.8</source>
						<target>1.8</target>
					</configuration>
					<executions>
						<execution>
							<goals>
								<goal>docs</goal>
							</goals>
							<phase>package</phase>
						</execution>
					</executions>
				</plugin>
			</plugins>
        </pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-enforcer-plugin</artifactId>
                <version>1.4.1</version>
                <executions>
                    <execution>
                        <id>enforce-versions</id>
                        <goals>
                            <goal>enforce</goal>
                        </goals>
                        <configuration>
                            <rules>
                                <requireMavenVersion>
                                    <version>${maven.version.required}</version>
                                </requireMavenVersion>
                                <requireJavaVersion>
                                    <version>${java.version.required}</version>
                                </requireJavaVersion>
                            </rules>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-pmd-plugin</artifactId>
                <version>3.7</version>
                <executions>
                    <execution>
                        <phase>verify</phase>
                        <goals>
                            <goal>check</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <rulesets>
                        <ruleset>${project.parent.basedir}/dev-support/ranger-pmd-ruleset.xml</ruleset>
                    </rulesets>
                    <sourceEncoding>UTF-8</sourceEncoding>
                    <failOnViolation>true</failOnViolation>
                    <linkXRef>false</linkXRef>
                    <includeTests>true</includeTests>
                    <verbose>true</verbose>
                    <excludeRoots>
                        <excludeRoot>${basedir}/src/main/generated</excludeRoot>
                    </excludeRoots>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.rat</groupId>
                <artifactId>apache-rat-plugin</artifactId>
                <version>0.11</version>
                <executions>
                    <execution>
                        <phase>verify</phase>
                        <goals>
                            <goal>check</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <excludeSubProjects>false</excludeSubProjects>
                    <excludes>
                        <exclude>**/dependency-reduced-pom.xml</exclude>
                        <exclude>**/robots.txt</exclude>
                        <exclude>**/MANIFEST.MF</exclude>
                        <exclude>**/bootstrap.min.js</exclude>
                        <exclude>**/src/main/webapp/fonts/**</exclude>
                        <exclude>**/src/main/webapp/libs/**</exclude>
                        <exclude>.git/**</exclude>
                        <exclude>.pc/**</exclude>
                        <exclude>debian/**</exclude>
                        <exclude>.gitignore/**</exclude>
                        <exclude>.svn/**</exclude>
                        <exclude>.idea/**</exclude>
                        <exclude>dev-support/**</exclude>
                        <exclude>**/.gitignore/**</exclude>
                        <exclude>**/.project/**</exclude>
                        <exclude>**/.settings/**</exclude>
                        <exclude>**/.classpath/**</exclude>
                        <exclude>**/*.iml</exclude>
                        <exclude>**/target/**</exclude>
                        <exclude>*CHANGES*</exclude>
                        <exclude>**/ISSUES</exclude>
                        <exclude>**/patchprocess/**</exclude>
                        <exclude>**/test/resources/**/*.json</exclude>
                        <exclude>**/test/resources/**/*.txt</exclude>
                        <exclude>**/test/resources/**/*.csv</exclude>
                        <exclude>**/main/resources/**/*.json</exclude>
                        <exclude>**/samples/**/*.json</exclude>
                        <exclude>**/.externalToolBuilders/*</exclude>
                        <exclude>*.patch</exclude>
                        <exclude>**/testdata/*.json</exclude>
                        <exclude>atlassian-ide-plugin.xml</exclude>
                        <exclude>**/.pydevproject</exclude>
                        <exclude>**/derby.log</exclude>
                        <exclude>**/*.jaas</exclude>
                        <exclude>**/target/apidocs/**</exclude>
                        <exclude>**/target/kms/apidocs/**</exclude>
                        <exclude>**/importPolicy/*.json</exclude>
                    </excludes>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <version>1.7</version>
                <executions>
                    <execution>
                        <phase>process-resources</phase>
                        <configuration>
                            <target>
                                <echo message="${project.version}" file="${project.build.directory}/version"/>
                            </target>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>findbugs-maven-plugin</artifactId>
                <version>${findbugs.plugin.version}</version>
                <configuration>
                    <includeFilterFile>./dev-support/findbugsIncludeFile.xml</includeFilterFile>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>
