 ------
 Delete Additional Files Not Exposed to Maven
 ------
 Mike Perham
 <mperham@apache.org>
 ------
 November 2007
 ------

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

~~ NOTE: For help with the syntax of this file, see:
~~ http://maven.apache.org/doxia/references/apt-format.html

Delete Additional Files Not Exposed to Maven

  The Maven Clean Plugin will delete the <<<target>>> directory by default.  You may configure
  it to delete additional directories and files.  The following example shows how:

+--------
<build>
  [...]
  <plugin>
    <artifactId>maven-clean-plugin</artifactId>
    <version>${project.version}</version>
    <configuration>
      <filesets>
        <fileset>
          <directory>some/relative/path</directory>
          <includes>
            <include>**/*.tmp</include>
            <include>**/*.log</include>
          </includes>
          <excludes>
            <exclude>**/important.log</exclude>
            <exclude>**/another-important.log</exclude>
          </excludes>
          <followSymlinks>false</followSymlinks>
        </fileset>
      </filesets>
    </configuration>
  </plugin>
  [...]
</build>
+---------

 <<Note:>> The <<<directory>>> in the <<<fileset>>> is a relative path inside a project, in other words,

+--------
  <directory>some/relative/path</directory>
+--------

 is equivalent to:

+--------
  <directory>${basedir}/some/relative/path</directory>
+--------

 You could also define file set rules in a parent POM. In this case, the clean plugin adds the subproject
 basedir to the defined relative path.
