<?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>20</version>
    </parent>
    <groupId>org.apache.ranger</groupId>
    <artifactId>ranger</artifactId>
    <version>1.2.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>plugin-nifi-registry</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>1.1.0</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.5.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>
        <jsonsmart.version>2.3</jsonsmart.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.90</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>
