<?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>37</version>
  </parent>
  <groupId>org.apache.rat</groupId>
  <artifactId>apache-rat-project</artifactId>
  <version>0.18</version>
  <packaging>pom</packaging>
  <name>Apache Creadur RAT</name>
  <url>https://creadur.apache.org/rat/</url>
  <description>
Apache RAT is a release audit tool. It improves accuracy and efficiency when checking
releases. It is heuristic in nature: making guesses about possible problems. It
will produce false positives and cannot find every possible issue with a release.
Its reports require interpretation.

In response to demands from project quality tool developers, RAT is available as a
library suitable for inclusion in tools. This POM describes that library.
Note that binary compatibility is not guaranteed between 0.x releases.

Apache RAT is developed by the Apache Creadur project, a language and build
agnostic home for software distribution comprehension and audit tools.
  </description>
  <inceptionYear>2006</inceptionYear>
  <properties>
    <sonar.organization>apache</sonar.organization>
    <sonar.host.url>https://sonarcloud.io</sonar.host.url>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <!-- taken from https://maven.apache.org/guides/mini/guide-reproducible-builds.html -->
    <!-- MSITE-1018, RAT-397: nil out timestamp in order to get current build timestamp -->
    <project.build.outputTimestamp>a</project.build.outputTimestamp>
    <ant.version>1.10.15</ant.version>
    <assertj.version>4.0.0-M1</assertj.version>
    <javaVersion>17</javaVersion>
    <tika.version>3.2.3</tika.version>
    <mockito.version>5.22.0</mockito.version>
    <maven.compiler.source>${javaVersion}</maven.compiler.source>
    <maven.compiler.target>${javaVersion}</maven.compiler.target>
    <!-- This is the version of Maven required to use the RAT Maven Plugin -->
    <mavenMinVersion>3.9</mavenMinVersion>
    <mavenVersion>3.9.13</mavenVersion>
    <creadur.jira.id>RAT</creadur.jira.id>
    <velocity.core.version>2.4.1</velocity.core.version>
    <velocity.tools.version>3.1</velocity.tools.version>
    <!-- maven plugin versions -->
    <mavenPluginTestingVersion>3.5.1</mavenPluginTestingVersion>
    <mavenPluginPluginVersion>3.15.2</mavenPluginPluginVersion>
    <mavenChangesVersion>3.0.0-M3</mavenChangesVersion>
    <mavenJavadocPluginVersion>3.12.0</mavenJavadocPluginVersion>
    <mavenPmdPluginVersion>3.28.0</mavenPmdPluginVersion>
    <!-- Used to generate download page for RAT during site builds, please adapt versions manually BEFORE doing a release -->
    <!-- START - adapt manually before doing a release -->
    <previousRatVersion>0.18</previousRatVersion>
    <currentSnapshotRatVersion>1.0.0-SNAPSHOT</currentSnapshotRatVersion>
    <!-- END - adapt manually before doing a release -->
  </properties>
  <distributionManagement>
    <site>
      <id>staging</id>
      <!-- RAT-409: For the URL to resolve to the default URL as described in the Apache Site Plugin documentation this URL
      must be invalid. A ticket is open to resolve this issue. See https://issues.apache.org/jira/browse/MSITE-1016
      -->
      <url>invalid:url</url>
    </site>
  </distributionManagement>
  <dependencyManagement>
    <dependencies>
      <!-- used to render the site and make skin updates more transparent -->
      <dependency>
        <groupId>org.apache.maven.skins</groupId>
        <artifactId>maven-fluido-skin</artifactId>
        <version>2.1.0</version>
      </dependency>
      <dependency>
        <groupId>org.apache.rat</groupId>
        <artifactId>apache-rat-core</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.rat</groupId>
        <artifactId>apache-rat-testdata</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.rat</groupId>
        <artifactId>apache-rat-core</artifactId>
        <version>${project.version}</version>
        <type>test-jar</type>
        <classifier>tests</classifier>
      </dependency>
      <dependency>
        <groupId>org.apache.rat</groupId>
        <artifactId>apache-rat-tasks</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.rat</groupId>
        <artifactId>apache-rat-tools</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.rat</groupId>
        <artifactId>apache-rat-plugin</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>commons-cli</groupId>
        <artifactId>commons-cli</artifactId>
        <version>1.8.0</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-collections4</artifactId>
        <version>4.5.0</version>
      </dependency>
      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>2.21.0</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.20.0</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-compress</artifactId>
        <version>1.28.0</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-text</artifactId>
        <version>1.15.0</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-csv</artifactId>
        <version>1.14.1</version>
      </dependency>
      <dependency>
        <groupId>org.assertj</groupId>
        <artifactId>assertj-bom</artifactId>
        <version>${assertj.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.junit</groupId>
        <artifactId>junit-bom</artifactId>
        <version>6.1.0-M1</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.mockito</groupId>
        <artifactId>mockito-bom</artifactId>
        <version>${mockito.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.hamcrest</groupId>
        <artifactId>hamcrest-library</artifactId>
        <version>3.0</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.ant</groupId>
        <artifactId>ant</artifactId>
        <version>${ant.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.ant</groupId>
        <artifactId>ant-antunit</artifactId>
        <version>1.4.1</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.ant</groupId>
        <artifactId>ant-testutil</artifactId>
        <version>${ant.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.plugin-tools</groupId>
        <artifactId>maven-plugin-annotations</artifactId>
        <version>${mavenPluginPluginVersion}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.plugin-testing</groupId>
        <artifactId>maven-plugin-testing-harness</artifactId>
        <version>${mavenPluginTestingVersion}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-plugin-api</artifactId>
        <version>${mavenVersion}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.assertj</groupId>
        <artifactId>assertj-core</artifactId>
        <version>${assertj.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-core</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-text-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.velocity</groupId>
        <artifactId>velocity-engine-core</artifactId>
        <version>${velocity.core.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.velocity.tools</groupId>
        <artifactId>velocity-tools-generic</artifactId>
        <version>${velocity.tools.version}</version>
      </dependency>
      <dependency>
        <groupId>org.codehaus.groovy</groupId>
        <artifactId>groovy-all</artifactId>
        <!-- TODO RAT-527: migrate to newer version under ASF umbrella: 5.x including itests in RAT's core -->
        <version>2.4.21</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>com.google.jimfs</groupId>
        <artifactId>jimfs</artifactId>
        <version>1.3.1</version>
        <scope>test</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <reporting>
    <!-- N.B. plugins defined here in the <reporting> section ignore what's defined in <pluginManagement>
         in the <build> section above, so we have to define the versions here. -->
    <plugins>
      <!-- org.apache.maven.plugins, alpha order by artifact id -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-changes-plugin</artifactId>
        <version>${mavenChangesVersion}</version>
        <configuration>
          <xmlPath>${basedir}/src/changes/changes.xml</xmlPath>
          <columnNames>Fix Version,Key,Component,Summary,Type,Resolution,Status</columnNames>
          <!-- Sort cols in natural order when using JQL for JIRA 5.1 -->
          <sortColumnNames>Fix Version DESC,Type,Key DESC</sortColumnNames>
          <resolutionIds>Fixed</resolutionIds>
          <statusIds>Resolved,Closed</statusIds>
          <!-- Don't include sub-task -->
          <typeIds>Bug,New Feature,Task,Improvement,Wish,Test</typeIds>
          <!-- TODO: what's the meaning of these copy-paste variables? -->
          <onlyCurrentVersion>${commons.changes.onlyCurrentVersion}</onlyCurrentVersion>
          <maxEntries>${commons.changes.maxEntries}</maxEntries>
          <runOnlyAtExecutionRoot>${commons.changes.runOnlyAtExecutionRoot}</runOnlyAtExecutionRoot>
        </configuration>
        <reportSets>
          <reportSet>
            <reports>
              <report>changes</report>
              <report>jira-changes</report>
              <report>github-changes</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
      <!-- Disabled until https://github.com/apache/maven-changelog-plugin/issues/200 is fixed
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-changelog-plugin</artifactId>
        <version>2.3</version>
      </plugin-->
      <!-- catch code tags -->
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>taglist-maven-plugin</artifactId>
        <version>3.2.2</version>
        <configuration>
          <tagListOptions>
            <tagClasses>
              <tagClass>
                <displayName>Todo Work</displayName>
                <tags>
                  <tag>
                    <matchString>todo</matchString>
                    <matchType>ignoreCase</matchType>
                  </tag>
                  <tag>
                    <matchString>fixme</matchString>
                    <matchType>ignoreCase</matchType>
                  </tag>
                </tags>
              </tagClass>
              <tagClass>
                <displayName>Refactor Work</displayName>
                <tags>
                  <tag>
                    <matchString>refactor</matchString>
                    <matchType>ignoreCase</matchType>
                  </tag>
                </tags>
              </tagClass>
              <tagClass>
                <displayName>Review Work</displayName>
                <tags>
                  <tag>
                    <matchString>review</matchString>
                    <matchType>ignoreCase</matchType>
                  </tag>
                </tags>
              </tagClass>
              <tagClass>
                <displayName>Deprecated items</displayName>
                <tags>
                  <tag>
                    <matchString>@deprecated</matchString>
                    <matchType>ignoreCase</matchType>
                  </tag>
                </tags>
              </tagClass>
            </tagClasses>
          </tagListOptions>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <configuration>
          <consoleOutput>true</consoleOutput>
          <failsOnError>true</failsOnError>
          <failOnViolation>true</failOnViolation>
          <violationSeverity>warning</violationSeverity>
          <excludeGeneratedSources>true</excludeGeneratedSources>
          <configLocation>src/conf/checkstyle.xml</configLocation>
          <suppressionsLocation>src/conf/checkstyle-suppressions.xml</suppressionsLocation>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>${mavenJavadocPluginVersion}</version>
        <configuration>
          <tags>
            <tag>
              <name>TODO</name>
              <placement>X</placement>
              <head>To do:</head>
            </tag>
          </tags>
          <notimestamp>true</notimestamp>
          <doclint>none</doclint>
        </configuration>
        <reportSets>
          <reportSet>
            <id>non-aggregate</id>
            <configuration>
            </configuration>
            <reports>
              <report>javadoc</report>
            </reports>
          </reportSet>
          <reportSet>
            <id>aggregate</id>
            <configuration>
            </configuration>
            <reports>
              <report>aggregate</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jxr-plugin</artifactId>
        <version>3.6.0</version>
        <reportSets>
          <reportSet>
            <reports>
              <report>jxr-no-fork</report>
              <report>test-jxr-no-fork</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-pmd-plugin</artifactId>
        <version>${mavenPmdPluginVersion}</version>
        <reportSets>
          <reportSet>
            <reports>
              <report>pmd</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-project-info-reports-plugin</artifactId>
        <version>3.9.0</version>
        <reportSets>
          <reportSet>
            <reports>
              <report>dependencies</report>
              <report>team</report>
              <report>mailing-lists</report>
              <report>issue-management</report>
              <report>ci-management</report>
              <!-- Do not enable the license report;
                   license links must only point to
                   http://www.apache.org/licenses/
              <report>license</report>
              -->
              <report>scm</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
      <plugin>
        <groupId>org.apache.rat</groupId>
        <artifactId>apache-rat-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>com.github.spotbugs</groupId>
        <artifactId>spotbugs-maven-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
        <reportSets>
          <reportSet>
            <reports>
              <!-- select non-aggregate reports -->
              <report>report</report>
            </reports>
          </reportSet>
        </reportSets>
        <configuration>
          <executions>
            <execution>
              <goals>
                <goal>prepare-agent</goal>
              </goals>
            </execution>
            <execution>
              <id>report</id>
              <phase>test</phase>
              <goals>
                <goal>report</goal>
              </goals>
            </execution>
          </executions>
        </configuration>
      </plugin>
    </plugins>
  </reporting>
  <build>
    <defaultGoal>clean install</defaultGoal>
    <pluginManagement>
      <!--
        This section is typically used to configure the versions of
        plugins that we use. Note, that we are inheriting from the
        parent POM, so we only have to configure version numbers,
        if ours is different.
      -->
      <plugins>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>animal-sniffer-maven-plugin</artifactId>
          <version>1.27</version>
          <executions>
            <execution>
              <!-- This checks the source code of our project -->
              <!--
                Note that this cannot use our ${javaVersion} property, so it must
                be changed manually when we decide to move to a higher version of
                Java
                RAT-478: Opened https://github.com/mojohaus/animal-sniffer/issues/316 to ask how to proceed here
              <id>check-java-17-compat</id>
              <phase>process-classes</phase>
              <goals>
                <goal>check</goal>
              </goals>
              <configuration>
                <signature>
                  <groupId>org.codehaus.mojo.signature</groupId>
                  <artifactId>java18</artifactId>
                  <version>1.0</version>
                </signature>
              </configuration>
              -->
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-checkstyle-plugin</artifactId>
          <version>3.6.0</version>
        </plugin>
        <plugin>
          <groupId>com.github.spotbugs</groupId>
          <artifactId>spotbugs-maven-plugin</artifactId>
          <version>4.9.8.2</version>
          <configuration>
            <maxAllowedViolations>46</maxAllowedViolations>
            <failOnError>true</failOnError>
            <!-- we only want to see our own problems in all subpackages -->
            <onlyAnalyze>org.apache.rat.-</onlyAnalyze>
            <!-- in order to have a global spotbugs configuration an exclusion file needs to exist in all submodules -->
            <excludeFilterFile>${project.basedir}/spotbugs-ignore.xml</excludeFilterFile>
            <plugins>
              <plugin>
                <groupId>com.h3xstream.findsecbugs</groupId>
                <artifactId>findsecbugs-plugin</artifactId>
                <version>1.14.0</version>
              </plugin>
            </plugins>
          </configuration>
          <executions>
            <execution>
              <goals>
                <goal>check</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-antrun-plugin</artifactId>
          <version>3.2.0</version>
          <dependencies>
            <dependency>
              <groupId>org.apache.ant</groupId>
              <artifactId>ant</artifactId>
              <version>${ant.version}</version>
            </dependency>
          </dependencies>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.15.0</version>
          <configuration>
            <release>${javaVersion}</release>
            <source>${javaVersion}</source>
            <target>${javaVersion}</target>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-javadoc-plugin</artifactId>
          <version>${mavenJavadocPluginVersion}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-dependency-plugin</artifactId>
          <version>3.10.0</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-invoker-plugin</artifactId>
          <version>3.9.1</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-pmd-plugin</artifactId>
          <version>${mavenPmdPluginVersion}</version>
          <configuration>
            <targetJdk>${javaVersion}</targetJdk>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-plugin-plugin</artifactId>
          <version>${mavenPluginPluginVersion}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-plugin-report-plugin</artifactId>
          <version>${mavenPluginPluginVersion}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-site-plugin</artifactId>
          <version>3.21.0</version>
        </plugin>
        <plugin>
          <groupId>org.apache.rat</groupId>
          <artifactId>apache-rat-plugin</artifactId>
          <!-- Do not use property values here as this causes problems during release -->
          <version>0.17</version>
          <configuration>
            <inputExcludeStd>ECLIPSE</inputExcludeStd>
            <inputExcludeStd>IDEA</inputExcludeStd>
            <inputExcludeStd>MAC</inputExcludeStd>
            <inputExcludes>
              <exclude>.asf.yaml</exclude>
              <exclude>src/site/apt/naming_help.txt</exclude>
              <exclude>**/iso-8859-1.html</exclude>
              <exclude>**/velocity.log</exclude>
              <!--
              RAT-353: until https://bugs.openjdk.org/browse/JDK-8227487 is fixed we add fonts manually
              and dejavu.css does not have a license statement
              -->
              <exclude>src/site/javadocFont/resources/fonts/dejavu.css</exclude>
              <!-- RAT-501: Generated by Eclipse, and not distributed, so ignorable. Remove if >0.17 -->
              <exclude>bin/**/*</exclude>
              <exclude>.externalToolBuilders/**/*</exclude>
            </inputExcludes>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-remote-resources-plugin</artifactId>
          <version>3.3.0</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-release-plugin</artifactId>
          <version>3.3.1</version>
          <configuration>
            <!-- Only prompt once for the release version -->
            <autoVersionSubmodules>true</autoVersionSubmodules>
            <mavenExecutorId>forked-path</mavenExecutorId>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-resources-plugin</artifactId>
          <version>3.5.0</version>
          <configuration>
            <propertiesEncoding>ISO-8859-1</propertiesEncoding>
            <addDefaultExcludes>false</addDefaultExcludes>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-failsafe-plugin</artifactId>
          <version>3.5.5</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>3.5.5</version>
          <configuration>
            <forkCount>1</forkCount>
            <!-- RAT-293: We need to append to the existing arguments in order for code coverage to work -->
            <argLine>${argLine} -Dfile.encoding=ISO-8859-1</argLine>
          </configuration>
        </plugin>
        <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
        <plugin>
          <groupId>org.eclipse.m2e</groupId>
          <artifactId>lifecycle-mapping</artifactId>
          <version>1.0.0</version>
          <configuration>
            <lifecycleMappingMetadata>
              <pluginExecutions>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.rat</groupId>
                    <artifactId>
                      apache-rat-plugin
                    </artifactId>
                    <versionRange>[0.17,)</versionRange>
                    <goals>
                      <goal>check</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore />
                  </action>
                </pluginExecution>
              </pluginExecutions>
            </lifecycleMappingMetadata>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>exec-maven-plugin</artifactId>
          <version>3.6.3</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>build-helper-maven-plugin</artifactId>
          <version>3.6.1</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>maven-clean-plugin</artifactId>
          <version>3.4.1</version>
        </plugin>
        <plugin>
          <groupId>org.jacoco</groupId>
          <artifactId>jacoco-maven-plugin</artifactId>
          <version>0.8.14</version>
          <executions>
            <execution>
              <goals>
                <goal>prepare-agent</goal>
              </goals>
            </execution>
            <execution>
              <id>report</id>
              <phase>test</phase>
              <goals>
                <goal>report</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>org.sonarsource.scanner.maven</groupId>
          <artifactId>sonar-maven-plugin</artifactId>
          <version>5.5.0.6356</version>
        </plugin>
      </plugins>
    </pluginManagement>
    <plugins>
      <plugin>
        <artifactId>maven-clean-plugin</artifactId>
        <configuration>
          <filesets>
            <fileset>
              <directory>${project.basedir}/src/site/apt</directory>
              <includes>
                <include>**/*.txt</include>
              </includes>
              <followSymlinks>false</followSymlinks>
            </fileset>
          </filesets>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <configuration>
          <configLocation>src/conf/checkstyle.xml</configLocation>
          <suppressionsLocation>src/conf/checkstyle-suppressions.xml</suppressionsLocation>
        </configuration>
      </plugin>
      <plugin>
        <groupId>com.github.spotbugs</groupId>
        <artifactId>spotbugs-maven-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-antrun-plugin</artifactId>
        <executions>
          <execution>
            <phase>pre-site</phase>
            <id>copy-site-resources</id>
            <goals>
              <goal>run</goal>
            </goals>
            <configuration>
              <target>
                <copy file="RELEASE_NOTES.txt" todir="${project.build.directory}/site/" failonerror="false" />
              </target>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-enforcer-plugin</artifactId>
        <executions>
          <execution>
            <id>enforce-no-package-cycles</id>
            <goals>
              <goal>enforce</goal>
            </goals>
            <phase>test</phase>
            <configuration>
              <skip>true</skip>
              <rules>
                <NoPackageCyclesRule implementation="org.apache.axiom.buildutils.enforcer.NoPackageCyclesEnforcerRule" />
              </rules>
            </configuration>
          </execution>
          <execution>
            <!-- This checks the bytecode version of the dependencies transitively -->
            <id>enforce-bytecode-version</id>
            <goals>
              <goal>enforce</goal>
            </goals>
            <configuration>
              <rules>
                <enforceBytecodeVersion>
                  <maxJdkVersion>${javaVersion}</maxJdkVersion>
                </enforceBytecodeVersion>
                <requireMavenVersion>
                  <version>${mavenMinVersion}</version>
                </requireMavenVersion>
              </rules>
              <fail>true</fail>
            </configuration>
          </execution>
        </executions>
        <dependencies>
          <dependency>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>extra-enforcer-rules</artifactId>
            <version>1.11.0</version>
          </dependency>
          <dependency>
            <groupId>org.apache.ws.commons.axiom</groupId>
            <artifactId>no-package-cycles-enforcer-rule</artifactId>
            <version>1.2.22</version>
          </dependency>
        </dependencies>
      </plugin>
      <plugin>
        <groupId>org.apache.rat</groupId>
        <artifactId>apache-rat-plugin</artifactId>
        <executions>
          <execution>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>animal-sniffer-maven-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
      </plugin>
    </plugins>
    <extensions>
      <extension>
        <groupId>org.apache.maven.wagon</groupId>
        <artifactId>wagon-ssh</artifactId>
        <version>3.5.3</version>
      </extension>
    </extensions>
  </build>
  <issueManagement>
    <system>JIRA</system>
    <url>https://issues.apache.org/jira/browse/RAT</url>
  </issueManagement>
  <ciManagement>
    <system>Jenkins</system>
    <url>https://ci-builds.apache.org/job/Creadur/job/Creadur-Rat/</url>
  </ciManagement>
  <mailingLists>
    <mailingList>
      <name>RAT Development (Apache Creadur project)</name>
      <subscribe>dev-subscribe@creadur.apache.org</subscribe>
      <unsubscribe>dev-unsubscribe@creadur.apache.org</unsubscribe>
      <post>dev@creadur.apache.org</post>
      <archive>https://mail-archives.apache.org/mod_mbox/creadur-dev/</archive>
    </mailingList>
    <mailingList>
      <name>RAT Commits (Apache Creadur project)</name>
      <subscribe>commits-subscribe@creadur.apache.org</subscribe>
      <unsubscribe>commits-unsubscribe@creadur.apache.org</unsubscribe>
      <archive>https://mail-archives.apache.org/mod_mbox/creadur-commits/</archive>
    </mailingList>
  </mailingLists>
  <developers>
    <developer>
      <id>bodewig</id>
      <name>Stefan Bodewig</name>
      <email>bodewig@apache.org</email>
      <roles>
        <role>Emeritus</role>
      </roles>
    </developer>
    <developer>
      <id>rdonkin</id>
      <name>Robert Burrell Donkin</name>
      <email>rdonkin@apache.org</email>
      <roles>
        <role>PMC</role>
      </roles>
    </developer>
    <developer>
      <id>jochen</id>
      <name>Jochen Wiedmann</name>
      <email>jochen@apache.org</email>
      <roles>
        <role>Emeritus</role>
      </roles>
    </developer>
    <developer>
      <id>gmcdonald</id>
      <name>Gavin</name>
      <email>gmcdonald@apache.org</email>
      <roles>
        <role>PMC</role>
      </roles>
    </developer>
    <developer>
      <id>brianf</id>
      <name>Brian Fox</name>
      <email>brianf@apache.org</email>
      <roles>
        <role>PMC</role>
      </roles>
    </developer>
    <developer>
      <id>dennisl</id>
      <name>Dennis Lundberg</name>
      <email>dennisl@apache.org</email>
      <roles>
        <role>Emeritus</role>
      </roles>
    </developer>
    <developer>
      <id>rgardler</id>
      <name>Ross Gardler</name>
      <email>rgardler@apache.org</email>
      <roles>
        <role>PMC</role>
      </roles>
    </developer>
    <developer>
      <id>crossley</id>
      <name>David Crossley</name>
      <email>crossley@apache.org</email>
      <roles>
        <role>Emeritus</role>
      </roles>
    </developer>
    <developer>
      <id>dblevins</id>
      <name>David Blevins</name>
      <email>dblevins@apache.org</email>
      <roles>
        <role>PMC</role>
      </roles>
    </developer>
    <developer>
      <id>pottlinger</id>
      <name>Philipp Ottlinger</name>
      <email>pottlinger@apache.org</email>
      <roles>
        <role>PMC chair</role>
      </roles>
    </developer>
    <developer>
      <id>claudenw</id>
      <name>Claude Warren</name>
      <email>claude@apache.org</email>
      <roles>
        <role>PMC</role>
      </roles>
    </developer>
    <developer>
      <id>jbonofre</id>
      <name>Jean-Baptiste Onofré</name>
      <email>jbonofre@apache.org</email>
      <roles>
        <role>PMC</role>
      </roles>
    </developer>
  </developers>
  <contributors>
    <contributor>
      <name>Lars Trieloff</name>
      <email>lars@trieloff.net</email>
    </contributor>
    <contributor>
      <name>Jukka Zitting</name>
      <email>jukka@apache.org</email>
    </contributor>
    <contributor>
      <name>Todd Volkert</name>
      <email>tvolkert+apache@gmail.com</email>
    </contributor>
    <contributor>
      <name>Henri Yandell</name>
      <email>bayard@apache.org</email>
    </contributor>
    <contributor>
      <name>Guillaume Nodet</name>
      <email>gnodet@apache.org</email>
    </contributor>
    <contributor>
      <name>Karl Pauls</name>
      <email>pauls@apache.org</email>
    </contributor>
    <contributor>
      <name>Matthieu Riou</name>
      <email>mriou@apache.org</email>
    </contributor>
    <contributor>
      <name>Garrett Rooney</name>
      <email>rooneg@apache.org</email>
    </contributor>
    <contributor>
      <name>Paul Merlin</name>
      <email>paulmerlin@apache.org</email>
    </contributor>
    <contributor>
      <name>Niels Basjes</name>
      <email>nielsbasjes@apache.org</email>
    </contributor>
    <contributor>
      <name>Bernd Bohmann</name>
      <email>bommel@apache.org</email>
    </contributor>
  </contributors>
  <scm>
    <connection>scm:git:https://gitbox.apache.org/repos/asf/creadur-rat.git</connection>
    <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/creadur-rat.git</developerConnection>
    <url>https://gitbox.apache.org/repos/asf?p=creadur-rat.git</url>
    <tag>apache-rat-project-0.18</tag>
  </scm>
  <modules>
    <module>apache-rat-core</module>
    <module>apache-rat-plugin</module>
    <module>apache-rat-tasks</module>
    <module>apache-rat</module>
    <module>apache-rat-tools</module>
    <module>apache-rat-testdata</module>
  </modules>
  <licenses>
    <license>
      <name>Apache License, Version 2</name>
      <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
      <distribution>repo</distribution>
      <comments>An OSI approved open source license.</comments>
    </license>
  </licenses>
  <organization>
    <name>Apache Software Foundation</name>
    <url>https://www.apache.org</url>
  </organization>
  <profiles>
    <profile>
      <id>maven.compiler.release</id>
      <activation>
        <jdk>[9,)</jdk>
      </activation>
      <properties>
        <!--
          Note that this cannot use our ${javaVersion} property, so it must
          be changed manually when we decide to move to a higher version of
          Java
        -->
        <maven.compiler.release>17</maven.compiler.release>
      </properties>
    </profile>
    <profile>
      <id>apache-release</id>
      <build>
        <plugins>
          <!-- Skip the source-release artifact here; we create it under the CLI module -->
          <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <executions>
              <execution>
                <id>source-release-assembly</id>
                <phase>package</phase>
                <goals>
                  <goal>single</goal>
                </goals>
                <configuration>
                  <skipAssembly>true</skipAssembly>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <!--
          Generate release notes in top-level directory from src/changes/changes.xml
          Usage:
          mvn changes:announcement-generate -Prelease-notes [-Dchanges.version=nnn]

          Defining changes.version allows one to create the RN without first removing the SNAPSHOT suffix.

          Requires file src/changes/release-notes.vm.
       -->
      <id>release-notes</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-changes-plugin</artifactId>
            <version>${mavenChangesVersion}</version>
            <configuration>
              <template>release-notes.vm</template>
              <templateDirectory>src/changes</templateDirectory>
              <runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
              <announcementDirectory>.</announcementDirectory>
              <announcementFile>RELEASE-NOTES.txt</announcementFile>
              <announceParameters>
                <releaseVersion>${mavenChangesVersion}</releaseVersion>
              </announceParameters>
            </configuration>
            <executions>
              <execution>
                <id>create-release-notes</id>
                <phase>generate-resources</phase>
                <goals>
                  <goal>announcement-generate</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
  <!-- in order to test new releases this reference can be activated locally
  <pluginRepositories>
    <pluginRepository>
      <id>staged-releases-rat-017</id>
      <url>https://repository.apache.org/content/repositories/orgapachecreadur-1012/</url>
    </pluginRepository>
  </pluginRepositories-->
</project>
