- Synched branch with current trunk for further development.

git-svn-id: https://svn.apache.org/repos/asf/maven/plugins/branches/MASSEMBLY-704@1633948 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/deploySite.sh b/deploySite.sh
new file mode 100755
index 0000000..f6c265d
--- /dev/null
+++ b/deploySite.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+#
+# 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.
+#
+
+mvn -Preporting site site:stage $@
+mvn scm-publish:publish-scm $@
diff --git a/integration-test-archetype/pom.xml b/integration-test-archetype/pom.xml
index adffed0..5d6a75d 100644
--- a/integration-test-archetype/pom.xml
+++ b/integration-test-archetype/pom.xml
@@ -1,4 +1,24 @@
-<?xml version="1.0" encoding="UTF-8"?><project>
+<?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>
   <modelVersion>4.0.0</modelVersion>
   <groupId>org.apache.maven.archetypes</groupId>
   <artifactId>assembly-plugin-it-archetype</artifactId>
@@ -27,4 +47,4 @@
       <url>${test.remote.repo.url}</url>
     </repository>
   </distributionManagement>
-</project>
\ No newline at end of file
+</project>
diff --git a/integration-test-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml b/integration-test-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml
index 1243b7e..57fdf71 100644
--- a/integration-test-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml
+++ b/integration-test-archetype/src/main/resources/META-INF/maven/archetype-metadata.xml
@@ -1,4 +1,24 @@
 <?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.
+-->
+
 <archetype-descriptor name="assembly-integration-test">
   <fileSets>
     <fileSet filtered="true" packaged="true" encoding="UTF-8">
@@ -32,4 +52,4 @@
       </includes>
     </fileSet>
   </fileSets>
-</archetype-descriptor>
\ No newline at end of file
+</archetype-descriptor>
diff --git a/integration-test-archetype/src/main/resources/META-INF/maven/archetype.xml b/integration-test-archetype/src/main/resources/META-INF/maven/archetype.xml
index b595bd5..3fa2200 100644
--- a/integration-test-archetype/src/main/resources/META-INF/maven/archetype.xml
+++ b/integration-test-archetype/src/main/resources/META-INF/maven/archetype.xml
@@ -1,4 +1,24 @@
 <?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.
+-->
+
 <archetype>
   <id>assembly-integration-test</id>
   <sources>
@@ -12,4 +32,4 @@
     <resource>src/assemble/bin.xml</resource>
     <resource>verify.bsh</resource>
   </resources>
-</archetype>
\ No newline at end of file
+</archetype>
diff --git a/integration-test-archetype/src/main/resources/archetype-resources/pom.xml b/integration-test-archetype/src/main/resources/archetype-resources/pom.xml
index a6be66f..648a8bc 100644
--- a/integration-test-archetype/src/main/resources/archetype-resources/pom.xml
+++ b/integration-test-archetype/src/main/resources/archetype-resources/pom.xml
@@ -1,4 +1,23 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/integration-test-archetype/src/main/resources/archetype-resources/src/java/AppTest.java b/integration-test-archetype/src/main/resources/archetype-resources/src/java/AppTest.java
index 6b24330..41aa147 100644
--- a/integration-test-archetype/src/main/resources/archetype-resources/src/java/AppTest.java
+++ b/integration-test-archetype/src/main/resources/archetype-resources/src/java/AppTest.java
@@ -1,5 +1,24 @@
 package ${package};
 
+/*
+ * 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.
+ */
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/integration-test-archetype/src/main/resources/archetype-resources/src/main/assembly/bin.xml b/integration-test-archetype/src/main/resources/archetype-resources/src/main/assembly/bin.xml
index c120fbb..7e9b952 100644
--- a/integration-test-archetype/src/main/resources/archetype-resources/src/main/assembly/bin.xml
+++ b/integration-test-archetype/src/main/resources/archetype-resources/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/integration-test-archetype/src/main/resources/archetype-resources/src/main/java/App.java b/integration-test-archetype/src/main/resources/archetype-resources/src/main/java/App.java
index 0f9b368..d517f70 100644
--- a/integration-test-archetype/src/main/resources/archetype-resources/src/main/java/App.java
+++ b/integration-test-archetype/src/main/resources/archetype-resources/src/main/java/App.java
@@ -1,5 +1,24 @@
 package ${package};
 
+/*
+ * 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.
+ */
+
 /**
  * Hello world!
  *
diff --git a/integration-test-archetype/src/main/resources/archetype-resources/verify.bsh b/integration-test-archetype/src/main/resources/archetype-resources/verify.bsh
index ca6796f..01f07f7 100644
--- a/integration-test-archetype/src/main/resources/archetype-resources/verify.bsh
+++ b/integration-test-archetype/src/main/resources/archetype-resources/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.File;
 
 /*
diff --git a/pom.xml b/pom.xml
index b541581..4e76914 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,7 +21,7 @@
 
 <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>
     <artifactId>maven-plugins</artifactId>
     <groupId>org.apache.maven.plugins</groupId>
@@ -30,7 +30,7 @@
   </parent>
 
   <artifactId>maven-assembly-plugin</artifactId>
-  <version>2.4.2-SNAPSHOT</version>
+  <version>2.6-SNAPSHOT</version>
   <packaging>maven-plugin</packaging>
 
   <name>Apache Maven Assembly Plugin</name>
@@ -59,7 +59,7 @@
   <properties>
     <mdoVersion>1.1.2</mdoVersion>
     <mavenArchiverVersion>2.5</mavenArchiverVersion>
-    <mavenFilteringVersion>1.2</mavenFilteringVersion>
+    <mavenFilteringVersion>1.3</mavenFilteringVersion>
     <mavenVersion>2.2.1</mavenVersion>
     <testOutputToFile>true</testOutputToFile>
     <mavenPluginVersion>3.2</mavenPluginVersion>
@@ -69,6 +69,9 @@
     <contributor>
       <name>Stephen Colebourne</name>
     </contributor>
+    <contributor>
+      <name>Tony Jewell</name>
+    </contributor>
   </contributors>
 
   <dependencies>
@@ -117,12 +120,12 @@
     <dependency>
       <groupId>org.codehaus.plexus</groupId>
       <artifactId>plexus-interpolation</artifactId>
-      <version>1.19</version>
+      <version>1.21</version>
     </dependency>
     <dependency>
       <groupId>org.codehaus.plexus</groupId>
       <artifactId>plexus-archiver</artifactId>
-      <version>2.4.4</version>
+      <version>2.8</version>
       <exclusions>
         <exclusion>
           <groupId>org.codehaus.plexus</groupId>
@@ -141,6 +144,11 @@
       <version>1.1</version>
     </dependency>
     <dependency>
+    <groupId>commons-io</groupId>
+    <artifactId>commons-io</artifactId>
+    <version>2.2</version>
+  </dependency>
+    <dependency>
       <groupId>org.apache.maven.shared</groupId>
       <artifactId>maven-filtering</artifactId>
       <version>${mavenFilteringVersion}</version>
@@ -148,7 +156,7 @@
     <dependency>
       <groupId>org.codehaus.plexus</groupId>
       <artifactId>plexus-io</artifactId>
-      <version>2.0.9</version>
+      <version>2.3.2</version>
       <exclusions>
         <exclusion>
           <groupId>org.codehaus.plexus</groupId>
@@ -164,7 +172,7 @@
     <dependency>
       <groupId>org.codehaus.plexus</groupId>
       <artifactId>plexus-utils</artifactId>
-      <version>3.0.15</version>
+      <version>3.0.20</version>
     </dependency>
     <dependency>
       <groupId>org.apache.maven.shared</groupId>
@@ -190,6 +198,12 @@
       <scope>test</scope>
     </dependency>
     <dependency>
+      <groupId>org.easymock</groupId>
+      <artifactId>easymock</artifactId>
+      <version>2.5.2</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
       <groupId>jdom</groupId>
       <artifactId>jdom</artifactId>
       <version>1.0</version>
@@ -230,11 +244,12 @@
         <directory>${project.build.directory}/generated-resources/plexus</directory>
       </resource>
     </resources>
-    
+
     <plugins>
       <plugin>
         <groupId>org.codehaus.plexus</groupId>
         <artifactId>plexus-component-metadata</artifactId>
+        <version>1.6</version>
         <executions>
           <execution>
             <id>descriptors</id>
@@ -279,6 +294,7 @@
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-plugin-plugin</artifactId>
+        <version>3.3</version>
         <executions>
           <execution>
             <id>mojo-descriptor</id>
@@ -318,6 +334,28 @@
             </systemPropertyVariables>
           </configuration>
         </plugin>
+        <plugin>
+          <groupId>org.apache.rat</groupId>
+          <artifactId>apache-rat-plugin</artifactId>
+          <configuration>
+            <excludes>
+              <!--
+                These files contain real repository artifacts.
+              -->
+              <exclude>src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/repository/org/codehaus/plexus/plexus-utils/**</exclude>
+              <exclude>src/functional-tests/remote-repo/assembly/dependency-artifact/**</exclude>
+              <!-- These files are only resources for integration tests. -->
+              <exclude>src/it/projects/repositories/repo-with-snapshot-parents/child/remote-repository/org/codehaus/plexus/plexus-utils/1.4.3-SNAPSHOT/plexus-utils-1.4.3-SNAPSHOT.pom</exclude>
+              <exclude>src/it/projects/container-descriptors/metaInf-services-aggregation/**/*</exclude>
+              <exclude>src/it/projects/container-descriptors/metaInf-spring-aggregation/**/*</exclude>
+              <!-- The following is used to exclude only txt files which don't have a license header -->
+              <exclude>src/it/**/*.txt</exclude>
+              <!-- The following is used to exclude files with the extension *.file -->
+              <exclude>src/it/**/*.file</exclude>
+              <exclude>src/it/projects/filtering-feature/filters-defined-in-build/src/main/config/**</exclude>
+            </excludes>
+          </configuration>
+        </plugin>
       </plugins>
     </pluginManagement>
   </build>
@@ -370,7 +408,7 @@
             <configuration>
               <localRepositoryPath>${localRepositoryPath}</localRepositoryPath>
               <properties>
-                <useJvmChmod>${useJvmChmod}</useJvmChmod> 
+                <useJvmChmod>${useJvmChmod}</useJvmChmod>
                 <testVersion>${testVersion}</testVersion>
                 <localRepositoryPath>${localRepositoryPath}</localRepositoryPath>
                 <invokerPluginVersion>${invokerPluginVersion}</invokerPluginVersion>
@@ -410,7 +448,7 @@
                     <useJvmChmod>${useJvmChmod}</useJvmChmod>
                   </properties>
                   <debug>${it.debug}</debug>
-                  <settingsFile>src/it/settings.xml</settingsFile> 
+                  <settingsFile>src/it/settings.xml</settingsFile>
                   <pomIncludes>
                     <pomInclude>${it.pomIncludes}</pomInclude>
                   </pomIncludes>
@@ -423,7 +461,7 @@
 
                     <pomExclude>dependency-sets/depSet-enum-vs-wildcard/enum/pom.xml</pomExclude>
                     <pomExclude>dependency-sets/depSet-enum-vs-wildcard/wildcard/pom.xml</pomExclude>
-                    
+
                     <pomExclude>**/child*/pom.xml</pomExclude>
                     <pomExclude>**/module*/pom.xml</pomExclude>
                     <pomExclude>**/descriptor/pom.xml</pomExclude>
@@ -434,7 +472,7 @@
                   <postBuildHookScript>verify</postBuildHookScript>
                 </configuration>
               </execution>
-           </executions>
+            </executions>
           </plugin>
         </plugins>
       </build>
diff --git a/required-docs.txt b/required-docs.txt
deleted file mode 100644
index 5cbe57e..0000000
--- a/required-docs.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-Assembly Plugin Required Docs
-
-* Component Descriptors:
-      o include in usage.html:
-            + how are they used?
-            + what can they specify?
-      o include examples of usage
-
-
diff --git a/src/functional-tests/java/org/apache/maven/plugin/assembly/AssemblyMojoTest.java b/src/functional-tests/java/org/apache/maven/plugin/assembly/AssemblyMojoTest.java
index f71dbfd..959e5ae 100644
--- a/src/functional-tests/java/org/apache/maven/plugin/assembly/AssemblyMojoTest.java
+++ b/src/functional-tests/java/org/apache/maven/plugin/assembly/AssemblyMojoTest.java
@@ -1248,6 +1248,20 @@
         assertTrue( "Test tar long file mode default", longFileMode.isWarnMode() );
     }
 
+    public void testTgzArchive()
+        throws Exception
+    {
+        executeMojo( "tgz-plugin-config.xml" );
+
+        TarArchiver.TarCompressionMethod method = (TarArchiver.TarCompressionMethod) getVariableValueFromObject( ArchiverManagerStub.archiverStub, "tarCompressionMethod" );
+
+        assertEquals( "Test Tar compression method", "gzip", method.getValue() );
+
+        TarLongFileMode longFileMode = (TarLongFileMode) getVariableValueFromObject( ArchiverManagerStub.archiverStub, "longFileMode" );
+
+        assertTrue( "Test tar long file mode default", longFileMode.isWarnMode() );
+    }
+
     public void testTarBzip2Archive()
         throws Exception
     {
@@ -1262,6 +1276,20 @@
         assertTrue( "Test tar long file mode default", longFileMode.isFailMode() );
     }
 
+    public void testTbz2Archive()
+        throws Exception
+    {
+        executeMojo( "tbz2-plugin-config.xml" );
+
+        TarArchiver.TarCompressionMethod method = (TarArchiver.TarCompressionMethod) getVariableValueFromObject( ArchiverManagerStub.archiverStub, "tarCompressionMethod" );
+
+        assertEquals( "Test Tar compression method", "bzip2", method.getValue() );
+
+        TarLongFileMode longFileMode = (TarLongFileMode) getVariableValueFromObject( ArchiverManagerStub.archiverStub, "longFileMode" );
+
+        assertTrue( "Test tar long file mode default", longFileMode.isFailMode() );
+    }
+
     public void testWarArchive()
         throws Exception
     {
diff --git a/src/functional-tests/java/org/apache/maven/plugin/assembly/BasicAbstractAssemblyMojoFeaturesTest.java b/src/functional-tests/java/org/apache/maven/plugin/assembly/BasicAbstractAssemblyMojoFeaturesTest.java
index 368f793..59624fb 100644
--- a/src/functional-tests/java/org/apache/maven/plugin/assembly/BasicAbstractAssemblyMojoFeaturesTest.java
+++ b/src/functional-tests/java/org/apache/maven/plugin/assembly/BasicAbstractAssemblyMojoFeaturesTest.java
@@ -1,5 +1,25 @@
 package org.apache.maven.plugin.assembly;
 
+/*
+ * 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.
+ */
+
+
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.handler.ArtifactHandler;
 import org.apache.maven.artifact.metadata.ArtifactMetadata;
@@ -679,4 +699,4 @@
         {
         }
     }
-}
\ No newline at end of file
+}
diff --git a/src/functional-tests/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolatorTest.java b/src/functional-tests/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolatorTest.java
index 65fd27d..9925c78 100644
--- a/src/functional-tests/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolatorTest.java
+++ b/src/functional-tests/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolatorTest.java
@@ -1,5 +1,25 @@
 package org.apache.maven.plugin.assembly.interpolation;
 
+/*
+ * 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.
+ */
+
+
 import org.apache.maven.model.Model;
 import org.apache.maven.plugins.assembly.model.Assembly;
 import org.apache.maven.plugins.assembly.model.DependencySet;
diff --git a/src/functional-tests/plugin-configs/assembly/tbz2-plugin-config.xml b/src/functional-tests/plugin-configs/assembly/tbz2-plugin-config.xml
new file mode 100644
index 0000000..eb4ca77
--- /dev/null
+++ b/src/functional-tests/plugin-configs/assembly/tbz2-plugin-config.xml
@@ -0,0 +1,86 @@
+<!--
+  ~ Copyright 2001-2006 The Apache Software Foundation.
+  ~
+  ~ Licensed 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>
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-assembly-plugin</artifactId>
+        <configuration>
+          <outputDirectory>${basedir}/target/test-harness/assembly/tbz2/target</outputDirectory>
+          <finalName>assembly</finalName>
+          <workDirectory>${basedir}/target/test-harness/assembly/tbz2/work</workDirectory>
+          <archiverManager implementation="org.apache.maven.plugin.assembly.stubs.ArchiverManagerStub" />
+          <localRepository>${localRepository}</localRepository>
+          <reactorProjects></reactorProjects>
+          <classifier></classifier>
+          <project implementation="org.apache.maven.plugin.assembly.stubs.AssemblyMavenProjectStub" />
+          <executedProject implementation="org.apache.maven.plugin.assembly.stubs.AssemblyMavenProjectStub" />
+          <descriptor>${basedir}/src/test/resources/assemblies/tbz2.xml</descriptor>
+          <tarLongFileMode>fail</tarLongFileMode>
+          <basedir>${basedir}</basedir>
+          <tempRoot>${basedir}/target/test-harness/assembly/tbz2/archive-tmp</tempRoot>
+          <siteDirectory>${basedir}/target/test-harness/assembly/tbz2/site</siteDirectory>
+          <includeSite>false</includeSite>
+          <appendAssemblyId>false</appendAssemblyId>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+</project>
+<!--
+  ~ Copyright 2001-2006 The Apache Software Foundation.
+  ~
+  ~ Licensed 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>
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-assembly-plugin</artifactId>
+        <configuration>
+          <outputDirectory>${basedir}/target/test-harness/assembly/tbz2/target</outputDirectory>
+          <finalName>assembly</finalName>
+          <workDirectory>${basedir}/target/test-harness/assembly/tbz2/work</workDirectory>
+          <archiverManager implementation="org.apache.maven.plugin.assembly.stubs.ArchiverManagerStub" />
+          <localRepository>${localRepository}</localRepository>
+          <reactorProjects></reactorProjects>
+          <classifier></classifier>
+          <project implementation="org.apache.maven.plugin.assembly.stubs.AssemblyMavenProjectStub" />
+          <executedProject implementation="org.apache.maven.plugin.assembly.stubs.AssemblyMavenProjectStub" />
+          <descriptor>${basedir}/src/test/resources/assemblies/tbz2.xml</descriptor>
+          <tarLongFileMode>fail</tarLongFileMode>
+          <basedir>${basedir}</basedir>
+          <tempRoot>${basedir}/target/test-harness/assembly/tbz2/archive-tmp</tempRoot>
+          <siteDirectory>${basedir}/target/test-harness/assembly/tbz2/site</siteDirectory>
+          <includeSite>false</includeSite>
+          <appendAssemblyId>false</appendAssemblyId>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+</project>
diff --git a/src/functional-tests/plugin-configs/assembly/tgz-plugin-config.xml b/src/functional-tests/plugin-configs/assembly/tgz-plugin-config.xml
new file mode 100644
index 0000000..66118e6
--- /dev/null
+++ b/src/functional-tests/plugin-configs/assembly/tgz-plugin-config.xml
@@ -0,0 +1,43 @@
+<!--
+  ~ Copyright 2001-2006 The Apache Software Foundation.
+  ~
+  ~ Licensed 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>
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-assembly-plugin</artifactId>
+        <configuration>
+          <outputDirectory>${basedir}/target/test-harness/assembly/tgz/target</outputDirectory>
+          <finalName>assembly</finalName>
+          <workDirectory>${basedir}/target/test-harness/assembly/tgz/work</workDirectory>
+          <archiverManager implementation="org.apache.maven.plugin.assembly.stubs.ArchiverManagerStub" />
+          <localRepository>${localRepository}</localRepository>
+          <reactorProjects></reactorProjects>
+          <classifier></classifier>
+          <project implementation="org.apache.maven.plugin.assembly.stubs.AssemblyMavenProjectStub" />
+          <executedProject implementation="org.apache.maven.plugin.assembly.stubs.AssemblyMavenProjectStub" />
+          <descriptor>${basedir}/src/test/resources/assemblies/tgz.xml</descriptor>
+          <tarLongFileMode>warn</tarLongFileMode>
+          <basedir>${basedir}</basedir>
+          <tempRoot>${basedir}/target/test-harness/assembly/tgz/archive-tmp</tempRoot>
+          <siteDirectory>${basedir}/target/test-harness/assembly/tgz/site</siteDirectory>
+          <includeSite>false</includeSite>
+          <appendAssemblyId>false</appendAssemblyId>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+</project>
diff --git a/src/functional-tests/resources/assemblies/tbz2.xml b/src/functional-tests/resources/assemblies/tbz2.xml
new file mode 100644
index 0000000..4708d3d
--- /dev/null
+++ b/src/functional-tests/resources/assemblies/tbz2.xml
@@ -0,0 +1,32 @@
+<!--
+  ~ Copyright 2001-2006 The Apache Software Foundation.
+  ~
+  ~ Licensed 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.
+  -->
+
+<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
+  <id>simple</id>
+  <formats>
+    <format>tbz2</format>
+  </formats>
+  <fileSets>
+    <fileSet>
+      <directory>target/test-harness/assembly/tbz2/target</directory>
+      <includes>
+        <include>*.jar</include>
+      </includes>
+    </fileSet>
+  </fileSets>
+</assembly>
diff --git a/src/functional-tests/resources/assemblies/tgz.xml b/src/functional-tests/resources/assemblies/tgz.xml
new file mode 100644
index 0000000..dbcc6c8
--- /dev/null
+++ b/src/functional-tests/resources/assemblies/tgz.xml
@@ -0,0 +1,32 @@
+<!--
+  ~ Copyright 2001-2006 The Apache Software Foundation.
+  ~
+  ~ Licensed 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.
+  -->
+
+<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
+  <id>simple</id>
+  <formats>
+    <format>tgz</format>
+  </formats>
+  <fileSets>
+    <fileSet>
+      <directory>target/test-harness/assembly/tgz/target</directory>
+      <includes>
+        <include>*.jar</include>
+      </includes>
+    </fileSet>
+  </fileSets>
+</assembly>
diff --git a/src/functional-tests/resources/basicAbstractAssemblyMojoFeaturesTest/outputFileNameMapping-assemblyDescriptor.xml b/src/functional-tests/resources/basicAbstractAssemblyMojoFeaturesTest/outputFileNameMapping-assemblyDescriptor.xml
index 80b0d7c..96863bf 100644
--- a/src/functional-tests/resources/basicAbstractAssemblyMojoFeaturesTest/outputFileNameMapping-assemblyDescriptor.xml
+++ b/src/functional-tests/resources/basicAbstractAssemblyMojoFeaturesTest/outputFileNameMapping-assemblyDescriptor.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -16,4 +36,4 @@
       <outputFileNameMapping>${artifact.artifactId}.${artifact.extension}</outputFileNameMapping>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/it-project-parent/pom.xml b/src/it/it-project-parent/pom.xml
index 7b6b54a..2cac89e 100644
--- a/src/it/it-project-parent/pom.xml
+++ b/src/it/it-project-parent/pom.xml
@@ -1,3 +1,22 @@
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/basic-features/ExecutionRoot/child/pom.xml b/src/it/projects/basic-features/ExecutionRoot/child/pom.xml
index 25d10d1..6549b26 100644
--- a/src/it/projects/basic-features/ExecutionRoot/child/pom.xml
+++ b/src/it/projects/basic-features/ExecutionRoot/child/pom.xml
@@ -1,4 +1,23 @@
 <?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/maven-v4_0_0.xsd">

   <modelVersion>4.0.0</modelVersion>

   <parent>

diff --git a/src/it/projects/basic-features/ExecutionRoot/pom.xml b/src/it/projects/basic-features/ExecutionRoot/pom.xml
index 3c9767f..8a64a6d 100644
--- a/src/it/projects/basic-features/ExecutionRoot/pom.xml
+++ b/src/it/projects/basic-features/ExecutionRoot/pom.xml
@@ -1,4 +1,23 @@
 <?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/maven-v4_0_0.xsd">

   <modelVersion>4.0.0</modelVersion>

   <parent>

diff --git a/src/it/projects/basic-features/ExecutionRoot/src/assemble/src.xml b/src/it/projects/basic-features/ExecutionRoot/src/assemble/src.xml
index bd9a208..3da12b6 100644
--- a/src/it/projects/basic-features/ExecutionRoot/src/assemble/src.xml
+++ b/src/it/projects/basic-features/ExecutionRoot/src/assemble/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly>
   <id>src</id>
   <formats>
diff --git a/src/it/projects/basic-features/ExecutionRoot/verify.bsh b/src/it/projects/basic-features/ExecutionRoot/verify.bsh
index 419f31f..714a01e 100644
--- a/src/it/projects/basic-features/ExecutionRoot/verify.bsh
+++ b/src/it/projects/basic-features/ExecutionRoot/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/basic-features/add-classpath/assembly.xml b/src/it/projects/basic-features/add-classpath/assembly.xml
new file mode 100644
index 0000000..24a3523
--- /dev/null
+++ b/src/it/projects/basic-features/add-classpath/assembly.xml
@@ -0,0 +1,39 @@
+<!--
+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.
+-->
+<assembly>
+  <id>full</id>
+  <formats>
+    <format>jar</format>
+  </formats>
+  <includeBaseDirectory>false</includeBaseDirectory>
+  <dependencySets>
+    <dependencySet>
+      <unpack>false</unpack>
+      <scope>runtime</scope>
+      <useProjectArtifact>true</useProjectArtifact>
+      <outputDirectory>lib/</outputDirectory>
+    </dependencySet>
+  </dependencySets>
+  <fileSets>
+    <fileSet>
+      <directory>${project.build.outputDirectory}</directory>
+      <outputDirectory>/</outputDirectory>
+    </fileSet>
+  </fileSets>
+</assembly>
\ No newline at end of file
diff --git a/src/it/projects/basic-features/add-classpath/invoker.properties b/src/it/projects/basic-features/add-classpath/invoker.properties
new file mode 100644
index 0000000..728079c
--- /dev/null
+++ b/src/it/projects/basic-features/add-classpath/invoker.properties
@@ -0,0 +1,18 @@
+# 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.
+
+invoker.goals=clean org.apache.maven.plugins:maven-assembly-plugin:${testVersion}:single
diff --git a/src/it/projects/basic-features/add-classpath/pom.xml b/src/it/projects/basic-features/add-classpath/pom.xml
new file mode 100644
index 0000000..e7b2899
--- /dev/null
+++ b/src/it/projects/basic-features/add-classpath/pom.xml
@@ -0,0 +1,63 @@
+<?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/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>org.apache.maven.plugin.assembly.test</groupId>
+    <artifactId>it-project-parent</artifactId>
+    <version>1</version>
+  </parent>
+  
+  <groupId>org.test</groupId>
+  <artifactId>test</artifactId>
+  <version>1.0</version>
+  
+  <name>Test</name>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-utils</artifactId>
+      <version>1.3</version>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-assembly-plugin</artifactId>
+        <configuration>
+          <descriptors>
+            <descriptor>assembly.xml</descriptor>
+          </descriptors>
+          <archive>
+            <manifest>
+              <mainClass>com.example.Main</mainClass>
+              <addClasspath>true</addClasspath>
+              <classpathPrefix>lib/</classpathPrefix>
+            </manifest>
+          </archive>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+</project>
diff --git a/src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java b/src/it/projects/basic-features/add-classpath/verify.bsh
similarity index 60%
copy from src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java
copy to src/it/projects/basic-features/add-classpath/verify.bsh
index 14de16b..c17bc60 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java
+++ b/src/it/projects/basic-features/add-classpath/verify.bsh
@@ -1,5 +1,3 @@
-package org.apache.maven.plugin.assembly;
-
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
@@ -8,9 +6,9 @@
  * 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
@@ -19,13 +17,23 @@
  * under the License.
  */
 
-import org.apache.maven.artifact.Artifact;
+import java.io.*;
+import java.util.jar.*;
+import java.util.*;
+import java.net.*;
 
-import java.util.Set;
+File file = new File( basedir, "target/test-1.0-full.jar" );
 
-public interface AssemblyContext
-{
-    void setResolvedArtifacts( Set<Artifact> artifacts );
+System.out.println( "file: " + file + " exists? " + file.exists() );
 
-    Set<Artifact> getResolvedArtifacts();
-}
+JarFile jarFile = new JarFile( file );
+
+Manifest mf = jarFile.getManifest();
+
+Attributes attrs = mf.getMainAttributes();
+
+String classPath = (String) attrs.get( Attributes.Name.CLASS_PATH );
+
+System.out.println( "Got Main-Class: " + mainClass );
+
+return  classPath.contains("plexus-utils");
diff --git a/src/it/projects/basic-features/classpath-descriptor/pom.xml b/src/it/projects/basic-features/classpath-descriptor/pom.xml
index 7d8a8c1..c20f0ae 100644
--- a/src/it/projects/basic-features/classpath-descriptor/pom.xml
+++ b/src/it/projects/basic-features/classpath-descriptor/pom.xml
@@ -1,4 +1,23 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -22,6 +41,7 @@
           <descriptorRefs>
             <descriptorRef>src</descriptorRef>
           </descriptorRefs>
+          <tarLongFileMode>posix</tarLongFileMode>
         </configuration>
       </plugin>
     </plugins>
diff --git a/src/it/projects/basic-features/descriptorDirectoryScan/pom.xml b/src/it/projects/basic-features/descriptorDirectoryScan/pom.xml
index 93590e3..4023c17 100644
--- a/src/it/projects/basic-features/descriptorDirectoryScan/pom.xml
+++ b/src/it/projects/basic-features/descriptorDirectoryScan/pom.xml
@@ -1,4 +1,23 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/basic-features/descriptorDirectoryScan/src/assemble/bin.xml b/src/it/projects/basic-features/descriptorDirectoryScan/src/assemble/bin.xml
index 8f17544..8786232 100644
--- a/src/it/projects/basic-features/descriptorDirectoryScan/src/assemble/bin.xml
+++ b/src/it/projects/basic-features/descriptorDirectoryScan/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
diff --git a/src/it/projects/basic-features/file-sameName/a.properties b/src/it/projects/basic-features/file-sameName/a.properties
index 714b232..aa0aca5 100644
--- a/src/it/projects/basic-features/file-sameName/a.properties
+++ b/src/it/projects/basic-features/file-sameName/a.properties
@@ -1 +1,18 @@
+# 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.
+
 testProp=boo
diff --git a/src/it/projects/basic-features/file-sameName/pom.xml b/src/it/projects/basic-features/file-sameName/pom.xml
index 2898c5c..63324cb 100644
--- a/src/it/projects/basic-features/file-sameName/pom.xml
+++ b/src/it/projects/basic-features/file-sameName/pom.xml
@@ -1,4 +1,23 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/basic-features/file-sameName/src/assemble/bin.xml b/src/it/projects/basic-features/file-sameName/src/assemble/bin.xml
index 5c8575a..9c9801b 100644
--- a/src/it/projects/basic-features/file-sameName/src/assemble/bin.xml
+++ b/src/it/projects/basic-features/file-sameName/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/basic-features/file-sameName/verify.bsh b/src/it/projects/basic-features/file-sameName/verify.bsh
index fd20c6c..37f4f45 100644
--- a/src/it/projects/basic-features/file-sameName/verify.bsh
+++ b/src/it/projects/basic-features/file-sameName/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/basic-features/formats-in-pom-win/pom.xml b/src/it/projects/basic-features/formats-in-pom-win/pom.xml
index b3fc13b..053f974 100644
--- a/src/it/projects/basic-features/formats-in-pom-win/pom.xml
+++ b/src/it/projects/basic-features/formats-in-pom-win/pom.xml
@@ -1,5 +1,24 @@
 <?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/maven-v4_0_0.xsd">
+
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.maven.plugin.assembly.test</groupId>
diff --git a/src/it/projects/basic-features/formats-in-pom-win/src/main/assembly/src.xml b/src/it/projects/basic-features/formats-in-pom-win/src/main/assembly/src.xml
index 58f3bfb..0e5b6d7 100644
--- a/src/it/projects/basic-features/formats-in-pom-win/src/main/assembly/src.xml
+++ b/src/it/projects/basic-features/formats-in-pom-win/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly>
   <id>src</id>
   <formats>
@@ -12,4 +32,4 @@
       </excludes>
     </fileSet>
   </fileSets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/basic-features/formats-in-pom-win/verify.bsh b/src/it/projects/basic-features/formats-in-pom-win/verify.bsh
index d0ab495..e2f1a45 100644
--- a/src/it/projects/basic-features/formats-in-pom-win/verify.bsh
+++ b/src/it/projects/basic-features/formats-in-pom-win/verify.bsh
@@ -1,2 +1,21 @@
+/*
+ * 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.
+ */
+
 return !new java.io.File( basedir, "target/parent-1-src/src/main/assembly/src.xml" ).exists() &&
-       new java.io.File( basedir, "target/parent-1-src.zip" ) .exists();
\ No newline at end of file
+       new java.io.File( basedir, "target/parent-1-src.zip" ) .exists();
diff --git a/src/it/projects/basic-features/formats/TODO.txt b/src/it/projects/basic-features/formats/TODO.txt
new file mode 100644
index 0000000..345e6ae
--- /dev/null
+++ b/src/it/projects/basic-features/formats/TODO.txt
@@ -0,0 +1 @@
+Test
diff --git a/src/it/projects/basic-features/formats/goals.txt b/src/it/projects/basic-features/formats/goals.txt
new file mode 100644
index 0000000..13ed85b
--- /dev/null
+++ b/src/it/projects/basic-features/formats/goals.txt
@@ -0,0 +1 @@
+clean org.apache.maven.plugins:maven-assembly-plugin:${testVersion}:single
diff --git a/src/it/projects/basic-features/formats/pom.xml b/src/it/projects/basic-features/formats/pom.xml
new file mode 100644
index 0000000..3299893
--- /dev/null
+++ b/src/it/projects/basic-features/formats/pom.xml
@@ -0,0 +1,50 @@
+<?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/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>org.apache.maven.plugin.assembly.test</groupId>
+    <artifactId>it-project-parent</artifactId>
+    <version>1</version>
+  </parent>
+  
+  <groupId>org.test</groupId>
+  <artifactId>format-test</artifactId>
+  <version>1.0</version>
+  
+  <name>Test</name>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-assembly-plugin</artifactId>
+        <configuration>
+          <descriptors>
+            <descriptor>src/assemblies/format-test.xml</descriptor>
+          </descriptors>
+          <appendAssemblyId>false</appendAssemblyId>
+          <outputDirectory>${project.build.directory}/assemblies</outputDirectory>
+          <tarLongFileMode>posix</tarLongFileMode>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+</project>
diff --git a/src/it/projects/basic-features/formats/src/assemblies/format-test.xml b/src/it/projects/basic-features/formats/src/assemblies/format-test.xml
new file mode 100644
index 0000000..f24150d
--- /dev/null
+++ b/src/it/projects/basic-features/formats/src/assemblies/format-test.xml
@@ -0,0 +1,42 @@
+<!--
+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.
+-->
+<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0
+                      http://maven.apache.org/xsd/assembly-1.1.0.xsd">
+  <id>format-test</id>
+  <formats>
+    <format>dir</format>
+    <format>zip</format>
+    <format>tar</format>
+    <format>tar.gz</format>
+    <format>tgz</format>
+    <format>tar.bz2</format>
+    <format>tbz2</format>
+    <format>jar</format>
+    <format>war</format>
+  </formats>
+  <includeBaseDirectory>false</includeBaseDirectory>
+  <files>
+    <file>
+      <source>TODO.txt</source>
+      <outputDirectory>/</outputDirectory>
+    </file>
+  </files>
+</assembly>
diff --git a/src/it/projects/basic-features/formats/verify.bsh b/src/it/projects/basic-features/formats/verify.bsh
new file mode 100644
index 0000000..6da9c84
--- /dev/null
+++ b/src/it/projects/basic-features/formats/verify.bsh
@@ -0,0 +1,135 @@
+/*
+ * 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.
+ */
+
+import java.io.*;
+import java.net.*;
+import java.util.jar.*;
+
+boolean result = true;
+
+try
+{
+    File assembly = new File( basedir, "target/assemblies/format-test-1.0" );
+    result = result && assembly.exists();
+    result = result && assembly.isDirectory();
+    result = result && new File( assembly, "TODO.txt" ).exists();
+}
+catch( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+try
+{
+    File assembly = new File( basedir, "target/assemblies/format-test-1.0.zip" );
+    result = result && assembly.exists();
+    result = result && assembly.isFile();
+}
+catch( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+try
+{
+    File assembly = new File( basedir, "target/assemblies/format-test-1.0.tar" );
+    result = result && assembly.exists();
+    result = result && assembly.isFile();
+}
+catch( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+try
+{
+    File assembly = new File( basedir, "target/assemblies/format-test-1.0.tar.gz" );
+    result = result && assembly.exists();
+    result = result && assembly.isFile();
+}
+catch( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+try
+{
+    File assembly = new File( basedir, "target/assemblies/format-test-1.0.tgz" );
+    result = result && assembly.exists();
+    result = result && assembly.isFile();
+}
+catch( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+try
+{
+    File assembly = new File( basedir, "target/assemblies/format-test-1.0.tar.bz2" );
+    result = result && assembly.exists();
+    result = result && assembly.isFile();
+}
+catch( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+try
+{
+    File assembly = new File( basedir, "target/assemblies/format-test-1.0.tbz2" );
+    result = result && assembly.exists();
+    result = result && assembly.isFile();
+}
+catch( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+try
+{
+    File assembly = new File( basedir, "target/assemblies/format-test-1.0.jar" );
+    result = result && assembly.exists();
+    result = result && assembly.isFile();
+}
+catch( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+try
+{
+    File assembly = new File( basedir, "target/assemblies/format-test-1.0.war" );
+    result = result && assembly.exists();
+    result = result && assembly.isFile();
+}
+catch( IOException e )
+{
+    e.printStackTrace();
+    result = false;
+}
+
+return result;
diff --git a/src/it/projects/basic-features/local-repo-interp/pom.xml b/src/it/projects/basic-features/local-repo-interp/pom.xml
index 6e4635f..5e14cc4 100644
--- a/src/it/projects/basic-features/local-repo-interp/pom.xml
+++ b/src/it/projects/basic-features/local-repo-interp/pom.xml
@@ -1,4 +1,23 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/basic-features/local-repo-interp/src/main/assembly/bin.xml b/src/it/projects/basic-features/local-repo-interp/src/main/assembly/bin.xml
index c1537b8..2bc8fe3 100644
--- a/src/it/projects/basic-features/local-repo-interp/src/main/assembly/bin.xml
+++ b/src/it/projects/basic-features/local-repo-interp/src/main/assembly/bin.xml
@@ -1,5 +1,25 @@
 <?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.
+-->
+
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/basic-features/local-repo-interp/verify.bsh b/src/it/projects/basic-features/local-repo-interp/verify.bsh
index 72f10ec..4fde732 100644
--- a/src/it/projects/basic-features/local-repo-interp/verify.bsh
+++ b/src/it/projects/basic-features/local-repo-interp/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File f = new File( basedir, "target/test-1-bin/unprefixed/maven-assembly-plugin.jar" );
diff --git a/src/it/projects/basic-features/massembly-256-pomPropertiesInterp/pom.xml b/src/it/projects/basic-features/massembly-256-pomPropertiesInterp/pom.xml
index 24462e6..532a96e 100644
--- a/src/it/projects/basic-features/massembly-256-pomPropertiesInterp/pom.xml
+++ b/src/it/projects/basic-features/massembly-256-pomPropertiesInterp/pom.xml
@@ -1,4 +1,23 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/basic-features/massembly-256-pomPropertiesInterp/src/main/assembly/myassembly.xml b/src/it/projects/basic-features/massembly-256-pomPropertiesInterp/src/main/assembly/myassembly.xml
index 2ad79a2..1486342 100644
--- a/src/it/projects/basic-features/massembly-256-pomPropertiesInterp/src/main/assembly/myassembly.xml
+++ b/src/it/projects/basic-features/massembly-256-pomPropertiesInterp/src/main/assembly/myassembly.xml
@@ -1,5 +1,25 @@
 <?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.
+-->
+
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/basic-features/massembly-256-pomPropertiesInterp/verify.bsh b/src/it/projects/basic-features/massembly-256-pomPropertiesInterp/verify.bsh
index ae6a2df..440406a 100644
--- a/src/it/projects/basic-features/massembly-256-pomPropertiesInterp/verify.bsh
+++ b/src/it/projects/basic-features/massembly-256-pomPropertiesInterp/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File f = new File( basedir, "target/massembly-256-pomPropertiesInterp-1-myassembly/file/path/some.file" );
diff --git a/src/it/projects/basic-features/massembly-351-projectPrefixInterp/pom.xml b/src/it/projects/basic-features/massembly-351-projectPrefixInterp/pom.xml
index 63a8f13..08446a8 100644
--- a/src/it/projects/basic-features/massembly-351-projectPrefixInterp/pom.xml
+++ b/src/it/projects/basic-features/massembly-351-projectPrefixInterp/pom.xml
@@ -1,4 +1,23 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/basic-features/massembly-351-projectPrefixInterp/src/main/assembly/myassembly.xml b/src/it/projects/basic-features/massembly-351-projectPrefixInterp/src/main/assembly/myassembly.xml
index 7e35c92..d4b60eb 100644
--- a/src/it/projects/basic-features/massembly-351-projectPrefixInterp/src/main/assembly/myassembly.xml
+++ b/src/it/projects/basic-features/massembly-351-projectPrefixInterp/src/main/assembly/myassembly.xml
@@ -1,5 +1,25 @@
 <?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.
+-->
+
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/basic-features/massembly-351-projectPrefixInterp/verify.bsh b/src/it/projects/basic-features/massembly-351-projectPrefixInterp/verify.bsh
index 07c766a..08f4ea8 100644
--- a/src/it/projects/basic-features/massembly-351-projectPrefixInterp/verify.bsh
+++ b/src/it/projects/basic-features/massembly-351-projectPrefixInterp/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File f = new File( basedir, "target/project-1-myassembly/files/project1.file" );
diff --git a/src/it/projects/basic-features/outputFileNameMapping-simple/pom.xml b/src/it/projects/basic-features/outputFileNameMapping-simple/pom.xml
index caef205..7b1b55f 100644
--- a/src/it/projects/basic-features/outputFileNameMapping-simple/pom.xml
+++ b/src/it/projects/basic-features/outputFileNameMapping-simple/pom.xml
@@ -1,4 +1,23 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/basic-features/outputFileNameMapping-simple/src/assemble/bin.xml b/src/it/projects/basic-features/outputFileNameMapping-simple/src/assemble/bin.xml
index 8f17544..8786232 100644
--- a/src/it/projects/basic-features/outputFileNameMapping-simple/src/assemble/bin.xml
+++ b/src/it/projects/basic-features/outputFileNameMapping-simple/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
diff --git a/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/pom.xml b/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/pom.xml
index fb7b793..827f2ff 100644
--- a/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/pom.xml
+++ b/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/pom.xml
@@ -1,3 +1,22 @@
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/repository/org/codehaus/plexus/plexus-utils/1.3-SNAPSHOT/maven-metadata.xml b/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/repository/org/codehaus/plexus/plexus-utils/1.3-SNAPSHOT/maven-metadata.xml
index 8c32cc3..880e9b1 100644
--- a/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/repository/org/codehaus/plexus/plexus-utils/1.3-SNAPSHOT/maven-metadata.xml
+++ b/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/repository/org/codehaus/plexus/plexus-utils/1.3-SNAPSHOT/maven-metadata.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0" encoding="UTF-8"?><metadata>
+
+<!--
+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.
+-->
+
   <groupId>org.codehaus.plexus</groupId>
   <artifactId>plexus-utils</artifactId>
   <version>1.3-SNAPSHOT</version>
@@ -9,4 +29,4 @@
     </snapshot>
     <lastUpdated>20060811151624</lastUpdated>
   </versioning>
-</metadata>
\ No newline at end of file
+</metadata>
diff --git a/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/repository/org/codehaus/plexus/plexus-utils/maven-metadata.xml b/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/repository/org/codehaus/plexus/plexus-utils/maven-metadata.xml
index 09a0544..ed1b3a7 100644
--- a/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/repository/org/codehaus/plexus/plexus-utils/maven-metadata.xml
+++ b/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/repository/org/codehaus/plexus/plexus-utils/maven-metadata.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0" encoding="UTF-8"?><metadata>
+
+<!--
+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.
+-->
+
   <groupId>org.codehaus.plexus</groupId>
   <artifactId>plexus-utils</artifactId>
   <version>1.3-SNAPSHOT</version>
@@ -8,4 +28,4 @@
     </versions>
     <lastUpdated>20060811151624</lastUpdated>
   </versioning>
-</metadata>
\ No newline at end of file
+</metadata>
diff --git a/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/src/assemble/bin.xml b/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/src/assemble/bin.xml
index a66a539..67624d9 100644
--- a/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/src/assemble/bin.xml
+++ b/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/src/main/java/test/App.java b/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/src/main/java/test/App.java
+++ b/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/verify.bsh b/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/verify.bsh
index 192659f..895fa10 100644
--- a/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/verify.bsh
+++ b/src/it/projects/basic-features/outputFileNameMapping-withArtifactBaseVersion/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/basic-features/relative-project-paths/pom.xml b/src/it/projects/basic-features/relative-project-paths/pom.xml
index 9e1c0ac..786539e 100644
--- a/src/it/projects/basic-features/relative-project-paths/pom.xml
+++ b/src/it/projects/basic-features/relative-project-paths/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/basic-features/relative-project-paths/src/assemble/src.xml b/src/it/projects/basic-features/relative-project-paths/src/assemble/src.xml
index 9d7c21b..19b4d26 100644
--- a/src/it/projects/basic-features/relative-project-paths/src/assemble/src.xml
+++ b/src/it/projects/basic-features/relative-project-paths/src/assemble/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly>
   <id>src</id>
   <formats>
diff --git a/src/it/projects/basic-features/relative-project-paths/verify.bsh b/src/it/projects/basic-features/relative-project-paths/verify.bsh
index f86e039..130e385 100644
--- a/src/it/projects/basic-features/relative-project-paths/verify.bsh
+++ b/src/it/projects/basic-features/relative-project-paths/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/basic-features/this & that/pom.xml b/src/it/projects/basic-features/this & that/pom.xml
index a9e72fd..c233222 100644
--- a/src/it/projects/basic-features/this & that/pom.xml
+++ b/src/it/projects/basic-features/this & that/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/basic-features/this & that/src/main/assembly/src.xml b/src/it/projects/basic-features/this & that/src/main/assembly/src.xml
index 58f3bfb..0e5b6d7 100644
--- a/src/it/projects/basic-features/this & that/src/main/assembly/src.xml
+++ b/src/it/projects/basic-features/this & that/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly>
   <id>src</id>
   <formats>
@@ -12,4 +32,4 @@
       </excludes>
     </fileSet>
   </fileSets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/basic-features/this & that/verify.bsh b/src/it/projects/basic-features/this & that/verify.bsh
index f14f88b..a4ff9bb 100644
--- a/src/it/projects/basic-features/this & that/verify.bsh
+++ b/src/it/projects/basic-features/this & that/verify.bsh
@@ -1 +1,20 @@
-return new java.io.File( basedir, "target/parent-1-src/src/main/assembly/src.xml" ).exists();
\ No newline at end of file
+/*
+ * 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.
+ */
+
+return new java.io.File( basedir, "target/parent-1-src/src/main/assembly/src.xml" ).exists();
diff --git a/src/it/projects/bugs/massembly-190/child-1/pom.xml b/src/it/projects/bugs/massembly-190/child-1/pom.xml
index 6e637a2..f262cb4 100644
--- a/src/it/projects/bugs/massembly-190/child-1/pom.xml
+++ b/src/it/projects/bugs/massembly-190/child-1/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/bugs/massembly-190/child-2/pom.xml b/src/it/projects/bugs/massembly-190/child-2/pom.xml
index dd46f7e..9d57742 100644
--- a/src/it/projects/bugs/massembly-190/child-2/pom.xml
+++ b/src/it/projects/bugs/massembly-190/child-2/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/bugs/massembly-190/pom.xml b/src/it/projects/bugs/massembly-190/pom.xml
index 93f5642..b08aedb 100644
--- a/src/it/projects/bugs/massembly-190/pom.xml
+++ b/src/it/projects/bugs/massembly-190/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -28,4 +48,4 @@
     <module>child-1</module>
     <module>child-2</module>
   </modules>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/bugs/massembly-190/src/main/assembly/bin.xml b/src/it/projects/bugs/massembly-190/src/main/assembly/bin.xml
index 9fae835..a3fb688 100644
--- a/src/it/projects/bugs/massembly-190/src/main/assembly/bin.xml
+++ b/src/it/projects/bugs/massembly-190/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/bugs/massembly-190/verify.bsh b/src/it/projects/bugs/massembly-190/verify.bsh
index 190e58d..f8054bd 100644
--- a/src/it/projects/bugs/massembly-190/verify.bsh
+++ b/src/it/projects/bugs/massembly-190/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File child1Codec = new File( basedir, "target/project-1-bin/child-1/commons-codec-1.3.jar" );
diff --git a/src/it/projects/bugs/massembly-285/massembly-285-assembly/pom.xml b/src/it/projects/bugs/massembly-285/massembly-285-assembly/pom.xml
index 41aedc0..ca6e16b 100644
--- a/src/it/projects/bugs/massembly-285/massembly-285-assembly/pom.xml
+++ b/src/it/projects/bugs/massembly-285/massembly-285-assembly/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/bugs/massembly-285/massembly-285-assembly/src/main/assembly/bin.xml b/src/it/projects/bugs/massembly-285/massembly-285-assembly/src/main/assembly/bin.xml
index c1d46ca..f60e231 100644
--- a/src/it/projects/bugs/massembly-285/massembly-285-assembly/src/main/assembly/bin.xml
+++ b/src/it/projects/bugs/massembly-285/massembly-285-assembly/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/bugs/massembly-285/massembly-285-assembly/src/main/java/tests/App.java b/src/it/projects/bugs/massembly-285/massembly-285-assembly/src/main/java/tests/App.java
index 53e46ad..c177e27 100644
--- a/src/it/projects/bugs/massembly-285/massembly-285-assembly/src/main/java/tests/App.java
+++ b/src/it/projects/bugs/massembly-285/massembly-285-assembly/src/main/java/tests/App.java
@@ -1,5 +1,25 @@
 package tests;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/bugs/massembly-285/massembly-285-assembly/verify.bsh b/src/it/projects/bugs/massembly-285/massembly-285-assembly/verify.bsh
index ca6796f..01f07f7 100644
--- a/src/it/projects/bugs/massembly-285/massembly-285-assembly/verify.bsh
+++ b/src/it/projects/bugs/massembly-285/massembly-285-assembly/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.File;
 
 /*
diff --git a/src/it/projects/bugs/massembly-285/massembly-285-mod1/pom.xml b/src/it/projects/bugs/massembly-285/massembly-285-mod1/pom.xml
index 1eff8af..52ebef0 100644
--- a/src/it/projects/bugs/massembly-285/massembly-285-mod1/pom.xml
+++ b/src/it/projects/bugs/massembly-285/massembly-285-mod1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0" encoding="UTF-8"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>massembly-285</artifactId>
     <groupId>org.apache.maven.plugin.assembly.test</groupId>
@@ -15,4 +35,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/bugs/massembly-285/massembly-285-mod1/src/main/java/tests/App.java b/src/it/projects/bugs/massembly-285/massembly-285-mod1/src/main/java/tests/App.java
index 53e46ad..c177e27 100644
--- a/src/it/projects/bugs/massembly-285/massembly-285-mod1/src/main/java/tests/App.java
+++ b/src/it/projects/bugs/massembly-285/massembly-285-mod1/src/main/java/tests/App.java
@@ -1,5 +1,25 @@
 package tests;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/bugs/massembly-285/massembly-285-mod1/src/test/java/tests/AppTest.java b/src/it/projects/bugs/massembly-285/massembly-285-mod1/src/test/java/tests/AppTest.java
index c378ad2..8c34397 100644
--- a/src/it/projects/bugs/massembly-285/massembly-285-mod1/src/test/java/tests/AppTest.java
+++ b/src/it/projects/bugs/massembly-285/massembly-285-mod1/src/test/java/tests/AppTest.java
@@ -1,5 +1,25 @@
 package tests;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/bugs/massembly-285/massembly-285-mod2/pom.xml b/src/it/projects/bugs/massembly-285/massembly-285-mod2/pom.xml
index ee0d2f8..48e04e2 100644
--- a/src/it/projects/bugs/massembly-285/massembly-285-mod2/pom.xml
+++ b/src/it/projects/bugs/massembly-285/massembly-285-mod2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0" encoding="UTF-8"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>massembly-285</artifactId>
     <groupId>org.apache.maven.plugin.assembly.test</groupId>
@@ -15,4 +35,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/bugs/massembly-285/massembly-285-mod2/src/main/java/tests/App.java b/src/it/projects/bugs/massembly-285/massembly-285-mod2/src/main/java/tests/App.java
index 53e46ad..c177e27 100644
--- a/src/it/projects/bugs/massembly-285/massembly-285-mod2/src/main/java/tests/App.java
+++ b/src/it/projects/bugs/massembly-285/massembly-285-mod2/src/main/java/tests/App.java
@@ -1,5 +1,25 @@
 package tests;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/bugs/massembly-285/massembly-285-mod2/src/test/java/tests/AppTest.java b/src/it/projects/bugs/massembly-285/massembly-285-mod2/src/test/java/tests/AppTest.java
index c378ad2..8c34397 100644
--- a/src/it/projects/bugs/massembly-285/massembly-285-mod2/src/test/java/tests/AppTest.java
+++ b/src/it/projects/bugs/massembly-285/massembly-285-mod2/src/test/java/tests/AppTest.java
@@ -1,5 +1,25 @@
 package tests;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/bugs/massembly-285/pom.xml b/src/it/projects/bugs/massembly-285/pom.xml
index b7c0f7f..d144586 100644
--- a/src/it/projects/bugs/massembly-285/pom.xml
+++ b/src/it/projects/bugs/massembly-285/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -30,4 +50,4 @@
       </plugins>
     </pluginManagement>
   </build>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/bugs/massembly-285/verify.bsh b/src/it/projects/bugs/massembly-285/verify.bsh
index 213231a..28fc6bf 100644
--- a/src/it/projects/bugs/massembly-285/verify.bsh
+++ b/src/it/projects/bugs/massembly-285/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.util.*;
 import java.util.jar.*;
@@ -45,4 +64,4 @@
     System.out.println( "ERROR! Test path: " + testPath + " was found " + zipCount + " times (should have been 1).\nArchive: " + f );
 }
 
-return jarCount == 1;
\ No newline at end of file
+return jarCount == 1;
diff --git a/src/it/projects/bugs/massembly-306/pom.xml b/src/it/projects/bugs/massembly-306/pom.xml
index 478d28d..e78427a 100644
--- a/src/it/projects/bugs/massembly-306/pom.xml
+++ b/src/it/projects/bugs/massembly-306/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?>
+
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/bugs/massembly-375/pom.xml b/src/it/projects/bugs/massembly-375/pom.xml
index 7574a52..08f82a4 100644
--- a/src/it/projects/bugs/massembly-375/pom.xml
+++ b/src/it/projects/bugs/massembly-375/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/bugs/massembly-375/src/main/assembly/test.xml b/src/it/projects/bugs/massembly-375/src/main/assembly/test.xml
index b8f9d73..2e61f95 100644
--- a/src/it/projects/bugs/massembly-375/src/main/assembly/test.xml
+++ b/src/it/projects/bugs/massembly-375/src/main/assembly/test.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly>
   <id>test</id>
   <formats>
diff --git a/src/it/projects/bugs/massembly-375/verify.bsh b/src/it/projects/bugs/massembly-375/verify.bsh
index 08fb551..e86cecf 100644
--- a/src/it/projects/bugs/massembly-375/verify.bsh
+++ b/src/it/projects/bugs/massembly-375/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.util.jar.*;
 
diff --git a/src/it/projects/bugs/massembly-462/pom.xml b/src/it/projects/bugs/massembly-462/pom.xml
index b2f8d55..cbf101c 100644
--- a/src/it/projects/bugs/massembly-462/pom.xml
+++ b/src/it/projects/bugs/massembly-462/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/bugs/massembly-462/src/main/assembly/src.xml b/src/it/projects/bugs/massembly-462/src/main/assembly/src.xml
index 70873f8..010bb99 100644
--- a/src/it/projects/bugs/massembly-462/src/main/assembly/src.xml
+++ b/src/it/projects/bugs/massembly-462/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/bugs/massembly-462/src/main/java/test/App.java b/src/it/projects/bugs/massembly-462/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/bugs/massembly-462/src/main/java/test/App.java
+++ b/src/it/projects/bugs/massembly-462/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/bugs/massembly-462/verify.bsh b/src/it/projects/bugs/massembly-462/verify.bsh
index 5864c50..df275b6 100644
--- a/src/it/projects/bugs/massembly-462/verify.bsh
+++ b/src/it/projects/bugs/massembly-462/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/components/component-dependencySet/pom.xml b/src/it/projects/components/component-dependencySet/pom.xml
index 9a59c54..aa7b613 100644
--- a/src/it/projects/components/component-dependencySet/pom.xml
+++ b/src/it/projects/components/component-dependencySet/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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>
diff --git a/src/it/projects/components/component-dependencySet/src/main/assembly/bin.xml b/src/it/projects/components/component-dependencySet/src/main/assembly/bin.xml
index 23fd617..ad20c93 100644
--- a/src/it/projects/components/component-dependencySet/src/main/assembly/bin.xml
+++ b/src/it/projects/components/component-dependencySet/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly>
   <id>bin</id>
   <formats>
@@ -6,4 +26,4 @@
   <componentDescriptors>
     <componentDescriptor>src/main/assembly/depset.xml</componentDescriptor>
   </componentDescriptors>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/components/component-dependencySet/src/main/assembly/depset.xml b/src/it/projects/components/component-dependencySet/src/main/assembly/depset.xml
index a70c838..70e102f 100644
--- a/src/it/projects/components/component-dependencySet/src/main/assembly/depset.xml
+++ b/src/it/projects/components/component-dependencySet/src/main/assembly/depset.xml
@@ -1,7 +1,27 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <component>
   <dependencySets>
     <dependencySet>
       <scope>test</scope>
     </dependencySet>
   </dependencySets>
-</component>
\ No newline at end of file
+</component>
diff --git a/src/it/projects/components/component-dependencySet/src/main/java/test/App.java b/src/it/projects/components/component-dependencySet/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/components/component-dependencySet/src/main/java/test/App.java
+++ b/src/it/projects/components/component-dependencySet/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/components/component-dependencySet/src/test/java/test/AppTest.java b/src/it/projects/components/component-dependencySet/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/components/component-dependencySet/src/test/java/test/AppTest.java
+++ b/src/it/projects/components/component-dependencySet/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/components/component-moduleSet/child1/pom.xml b/src/it/projects/components/component-moduleSet/child1/pom.xml
index 827be14..cbead74 100644
--- a/src/it/projects/components/component-moduleSet/child1/pom.xml
+++ b/src/it/projects/components/component-moduleSet/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/components/component-moduleSet/child1/src/main/java/test/App.java b/src/it/projects/components/component-moduleSet/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/components/component-moduleSet/child1/src/main/java/test/App.java
+++ b/src/it/projects/components/component-moduleSet/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/components/component-moduleSet/child1/src/test/java/test/AppTest.java b/src/it/projects/components/component-moduleSet/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/components/component-moduleSet/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/components/component-moduleSet/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/components/component-moduleSet/child2/pom.xml b/src/it/projects/components/component-moduleSet/child2/pom.xml
index 663afa5..5d251b1 100644
--- a/src/it/projects/components/component-moduleSet/child2/pom.xml
+++ b/src/it/projects/components/component-moduleSet/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <parent>
     <artifactId>parent</artifactId>
diff --git a/src/it/projects/components/component-moduleSet/child2/src/assemble/bin.xml b/src/it/projects/components/component-moduleSet/child2/src/assemble/bin.xml
index 721d587..b2f53e7 100644
--- a/src/it/projects/components/component-moduleSet/child2/src/assemble/bin.xml
+++ b/src/it/projects/components/component-moduleSet/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/components/component-moduleSet/child2/src/assemble/modset.xml b/src/it/projects/components/component-moduleSet/child2/src/assemble/modset.xml
index 360ef12..5f733af 100644
--- a/src/it/projects/components/component-moduleSet/child2/src/assemble/modset.xml
+++ b/src/it/projects/components/component-moduleSet/child2/src/assemble/modset.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <component>
   <moduleSets>
     <moduleSet>
@@ -16,4 +36,4 @@
       </binaries>
     </moduleSet>
   </moduleSets>
-</component>
\ No newline at end of file
+</component>
diff --git a/src/it/projects/components/component-moduleSet/pom.xml b/src/it/projects/components/component-moduleSet/pom.xml
index f41c287..36a597b 100644
--- a/src/it/projects/components/component-moduleSet/pom.xml
+++ b/src/it/projects/components/component-moduleSet/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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>
diff --git a/src/it/projects/container-descriptors/configured-handler/pom.xml b/src/it/projects/container-descriptors/configured-handler/pom.xml
index f1b146c..22f1062 100644
--- a/src/it/projects/container-descriptors/configured-handler/pom.xml
+++ b/src/it/projects/container-descriptors/configured-handler/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/container-descriptors/configured-handler/src/assemble/bin.xml b/src/it/projects/container-descriptors/configured-handler/src/assemble/bin.xml
index bdaa891..e8ad93e 100644
--- a/src/it/projects/container-descriptors/configured-handler/src/assemble/bin.xml
+++ b/src/it/projects/container-descriptors/configured-handler/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly>
   <id>bin</id>
   
diff --git a/src/it/projects/container-descriptors/configured-handler/verify.bsh b/src/it/projects/container-descriptors/configured-handler/verify.bsh
index 08f4de3..51e82d2 100644
--- a/src/it/projects/container-descriptors/configured-handler/verify.bsh
+++ b/src/it/projects/container-descriptors/configured-handler/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/container-descriptors/custom-containerDescriptorHandler/assembly/a.properties b/src/it/projects/container-descriptors/custom-containerDescriptorHandler/assembly/a.properties
index 714b232..aa0aca5 100644
--- a/src/it/projects/container-descriptors/custom-containerDescriptorHandler/assembly/a.properties
+++ b/src/it/projects/container-descriptors/custom-containerDescriptorHandler/assembly/a.properties
@@ -1 +1,18 @@
+# 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.
+
 testProp=boo
diff --git a/src/it/projects/container-descriptors/custom-containerDescriptorHandler/assembly/pom.xml b/src/it/projects/container-descriptors/custom-containerDescriptorHandler/assembly/pom.xml
index 8d947c6..ae89832 100644
--- a/src/it/projects/container-descriptors/custom-containerDescriptorHandler/assembly/pom.xml
+++ b/src/it/projects/container-descriptors/custom-containerDescriptorHandler/assembly/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/container-descriptors/custom-containerDescriptorHandler/assembly/src/assemble/bin.xml b/src/it/projects/container-descriptors/custom-containerDescriptorHandler/assembly/src/assemble/bin.xml
index 54ddcbd..6b86e1d 100644
--- a/src/it/projects/container-descriptors/custom-containerDescriptorHandler/assembly/src/assemble/bin.xml
+++ b/src/it/projects/container-descriptors/custom-containerDescriptorHandler/assembly/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/container-descriptors/custom-containerDescriptorHandler/handler-def/pom.xml b/src/it/projects/container-descriptors/custom-containerDescriptorHandler/handler-def/pom.xml
index 9b56c47..5c64535 100644
--- a/src/it/projects/container-descriptors/custom-containerDescriptorHandler/handler-def/pom.xml
+++ b/src/it/projects/container-descriptors/custom-containerDescriptorHandler/handler-def/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   
diff --git a/src/it/projects/container-descriptors/custom-containerDescriptorHandler/handler-def/src/main/resources/META-INF/plexus/components.xml b/src/it/projects/container-descriptors/custom-containerDescriptorHandler/handler-def/src/main/resources/META-INF/plexus/components.xml
index 2c43f1e..ae29e2d 100644
--- a/src/it/projects/container-descriptors/custom-containerDescriptorHandler/handler-def/src/main/resources/META-INF/plexus/components.xml
+++ b/src/it/projects/container-descriptors/custom-containerDescriptorHandler/handler-def/src/main/resources/META-INF/plexus/components.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <component-set>
   <components>
     <component>
@@ -11,4 +31,4 @@
       </configuration>
     </component>
   </components>
-</component-set>
\ No newline at end of file
+</component-set>
diff --git a/src/it/projects/container-descriptors/custom-containerDescriptorHandler/pom.xml b/src/it/projects/container-descriptors/custom-containerDescriptorHandler/pom.xml
index 4aeec9a..eae3bf9 100644
--- a/src/it/projects/container-descriptors/custom-containerDescriptorHandler/pom.xml
+++ b/src/it/projects/container-descriptors/custom-containerDescriptorHandler/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/container-descriptors/custom-containerDescriptorHandler/verify.bsh b/src/it/projects/container-descriptors/custom-containerDescriptorHandler/verify.bsh
index 5f0f49c..d380581 100644
--- a/src/it/projects/container-descriptors/custom-containerDescriptorHandler/verify.bsh
+++ b/src/it/projects/container-descriptors/custom-containerDescriptorHandler/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/container-descriptors/custom-handler-withFileEntries/assembly/a.properties b/src/it/projects/container-descriptors/custom-handler-withFileEntries/assembly/a.properties
index 714b232..aa0aca5 100644
--- a/src/it/projects/container-descriptors/custom-handler-withFileEntries/assembly/a.properties
+++ b/src/it/projects/container-descriptors/custom-handler-withFileEntries/assembly/a.properties
@@ -1 +1,18 @@
+# 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.
+
 testProp=boo
diff --git a/src/it/projects/container-descriptors/custom-handler-withFileEntries/assembly/pom.xml b/src/it/projects/container-descriptors/custom-handler-withFileEntries/assembly/pom.xml
index 20d2625..9a6d02b 100644
--- a/src/it/projects/container-descriptors/custom-handler-withFileEntries/assembly/pom.xml
+++ b/src/it/projects/container-descriptors/custom-handler-withFileEntries/assembly/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/container-descriptors/custom-handler-withFileEntries/assembly/src/assemble/bin.xml b/src/it/projects/container-descriptors/custom-handler-withFileEntries/assembly/src/assemble/bin.xml
index b534a2b..b70db47 100644
--- a/src/it/projects/container-descriptors/custom-handler-withFileEntries/assembly/src/assemble/bin.xml
+++ b/src/it/projects/container-descriptors/custom-handler-withFileEntries/assembly/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/container-descriptors/custom-handler-withFileEntries/handler-def/pom.xml b/src/it/projects/container-descriptors/custom-handler-withFileEntries/handler-def/pom.xml
index 9b56c47..5c64535 100644
--- a/src/it/projects/container-descriptors/custom-handler-withFileEntries/handler-def/pom.xml
+++ b/src/it/projects/container-descriptors/custom-handler-withFileEntries/handler-def/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   
diff --git a/src/it/projects/container-descriptors/custom-handler-withFileEntries/handler-def/src/main/resources/META-INF/plexus/components.xml b/src/it/projects/container-descriptors/custom-handler-withFileEntries/handler-def/src/main/resources/META-INF/plexus/components.xml
index d9ac42a..e971df5 100644
--- a/src/it/projects/container-descriptors/custom-handler-withFileEntries/handler-def/src/main/resources/META-INF/plexus/components.xml
+++ b/src/it/projects/container-descriptors/custom-handler-withFileEntries/handler-def/src/main/resources/META-INF/plexus/components.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <component-set>
   <components>
     <component>
@@ -11,4 +31,4 @@
       </configuration>
     </component>
   </components>
-</component-set>
\ No newline at end of file
+</component-set>
diff --git a/src/it/projects/container-descriptors/custom-handler-withFileEntries/pom.xml b/src/it/projects/container-descriptors/custom-handler-withFileEntries/pom.xml
index e75ee34..928b454 100644
--- a/src/it/projects/container-descriptors/custom-handler-withFileEntries/pom.xml
+++ b/src/it/projects/container-descriptors/custom-handler-withFileEntries/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/container-descriptors/custom-handler-withFileEntries/verify.bsh b/src/it/projects/container-descriptors/custom-handler-withFileEntries/verify.bsh
index 5f0f49c..d380581 100644
--- a/src/it/projects/container-descriptors/custom-handler-withFileEntries/verify.bsh
+++ b/src/it/projects/container-descriptors/custom-handler-withFileEntries/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/container-descriptors/custom-handler-withMixedEntries/assembly/a.properties b/src/it/projects/container-descriptors/custom-handler-withMixedEntries/assembly/a.properties
index 714b232..aa0aca5 100644
--- a/src/it/projects/container-descriptors/custom-handler-withMixedEntries/assembly/a.properties
+++ b/src/it/projects/container-descriptors/custom-handler-withMixedEntries/assembly/a.properties
@@ -1 +1,18 @@
+# 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.
+
 testProp=boo
diff --git a/src/it/projects/container-descriptors/custom-handler-withMixedEntries/assembly/pom.xml b/src/it/projects/container-descriptors/custom-handler-withMixedEntries/assembly/pom.xml
index 20d2625..9a6d02b 100644
--- a/src/it/projects/container-descriptors/custom-handler-withMixedEntries/assembly/pom.xml
+++ b/src/it/projects/container-descriptors/custom-handler-withMixedEntries/assembly/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/container-descriptors/custom-handler-withMixedEntries/assembly/src/assemble/bin.xml b/src/it/projects/container-descriptors/custom-handler-withMixedEntries/assembly/src/assemble/bin.xml
index e1f010e..56f9d9f 100644
--- a/src/it/projects/container-descriptors/custom-handler-withMixedEntries/assembly/src/assemble/bin.xml
+++ b/src/it/projects/container-descriptors/custom-handler-withMixedEntries/assembly/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/container-descriptors/custom-handler-withMixedEntries/handler-def/pom.xml b/src/it/projects/container-descriptors/custom-handler-withMixedEntries/handler-def/pom.xml
index 9b56c47..5c64535 100644
--- a/src/it/projects/container-descriptors/custom-handler-withMixedEntries/handler-def/pom.xml
+++ b/src/it/projects/container-descriptors/custom-handler-withMixedEntries/handler-def/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   
diff --git a/src/it/projects/container-descriptors/custom-handler-withMixedEntries/handler-def/src/main/resources/META-INF/plexus/components.xml b/src/it/projects/container-descriptors/custom-handler-withMixedEntries/handler-def/src/main/resources/META-INF/plexus/components.xml
index d9ac42a..e971df5 100644
--- a/src/it/projects/container-descriptors/custom-handler-withMixedEntries/handler-def/src/main/resources/META-INF/plexus/components.xml
+++ b/src/it/projects/container-descriptors/custom-handler-withMixedEntries/handler-def/src/main/resources/META-INF/plexus/components.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <component-set>
   <components>
     <component>
@@ -11,4 +31,4 @@
       </configuration>
     </component>
   </components>
-</component-set>
\ No newline at end of file
+</component-set>
diff --git a/src/it/projects/container-descriptors/custom-handler-withMixedEntries/pom.xml b/src/it/projects/container-descriptors/custom-handler-withMixedEntries/pom.xml
index 7715f33..e05b9a3 100644
--- a/src/it/projects/container-descriptors/custom-handler-withMixedEntries/pom.xml
+++ b/src/it/projects/container-descriptors/custom-handler-withMixedEntries/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/container-descriptors/custom-handler-withMixedEntries/verify.bsh b/src/it/projects/container-descriptors/custom-handler-withMixedEntries/verify.bsh
index 5f0f49c..d380581 100644
--- a/src/it/projects/container-descriptors/custom-handler-withMixedEntries/verify.bsh
+++ b/src/it/projects/container-descriptors/custom-handler-withMixedEntries/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/container-descriptors/metaInf-services-aggregation/child1/pom.xml b/src/it/projects/container-descriptors/metaInf-services-aggregation/child1/pom.xml
index 8b676fe..19aa0a9 100644
--- a/src/it/projects/container-descriptors/metaInf-services-aggregation/child1/pom.xml
+++ b/src/it/projects/container-descriptors/metaInf-services-aggregation/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>test</groupId>
@@ -14,4 +34,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/container-descriptors/metaInf-services-aggregation/child1/src/main/java/test/App.java b/src/it/projects/container-descriptors/metaInf-services-aggregation/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/container-descriptors/metaInf-services-aggregation/child1/src/main/java/test/App.java
+++ b/src/it/projects/container-descriptors/metaInf-services-aggregation/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/container-descriptors/metaInf-services-aggregation/child1/src/test/java/test/AppTest.java b/src/it/projects/container-descriptors/metaInf-services-aggregation/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/container-descriptors/metaInf-services-aggregation/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/container-descriptors/metaInf-services-aggregation/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/pom.xml b/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/pom.xml
index bc03626..330f4e0 100644
--- a/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/pom.xml
+++ b/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <parent>
     <artifactId>parent</artifactId>
diff --git a/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/src/assemble/bin.xml b/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/src/assemble/bin.xml
index 48138a0..a19d57a 100644
--- a/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/src/assemble/bin.xml
+++ b/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -21,4 +41,4 @@
       </excludes>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/src/main/java/test/App.java b/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/src/main/java/test/App.java
+++ b/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/src/test/java/test/AppTest.java b/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/src/test/java/test/AppTest.java
+++ b/src/it/projects/container-descriptors/metaInf-services-aggregation/child2/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/container-descriptors/metaInf-services-aggregation/pom.xml b/src/it/projects/container-descriptors/metaInf-services-aggregation/pom.xml
index 0d61f01..e71f88b 100644
--- a/src/it/projects/container-descriptors/metaInf-services-aggregation/pom.xml
+++ b/src/it/projects/container-descriptors/metaInf-services-aggregation/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -16,4 +36,4 @@
     <module>child1</module>
     <module>child2</module>
   </modules>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/container-descriptors/metaInf-services-aggregation/verify.bsh b/src/it/projects/container-descriptors/metaInf-services-aggregation/verify.bsh
index 1aed815..602bd6b 100644
--- a/src/it/projects/container-descriptors/metaInf-services-aggregation/verify.bsh
+++ b/src/it/projects/container-descriptors/metaInf-services-aggregation/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.util.jar.*;
 
diff --git a/src/it/projects/container-descriptors/metaInf-spring-aggregation/child1/pom.xml b/src/it/projects/container-descriptors/metaInf-spring-aggregation/child1/pom.xml
index 8b676fe..19aa0a9 100644
--- a/src/it/projects/container-descriptors/metaInf-spring-aggregation/child1/pom.xml
+++ b/src/it/projects/container-descriptors/metaInf-spring-aggregation/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>test</groupId>
@@ -14,4 +34,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/container-descriptors/metaInf-spring-aggregation/child1/src/main/java/test/App.java b/src/it/projects/container-descriptors/metaInf-spring-aggregation/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/container-descriptors/metaInf-spring-aggregation/child1/src/main/java/test/App.java
+++ b/src/it/projects/container-descriptors/metaInf-spring-aggregation/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/container-descriptors/metaInf-spring-aggregation/child1/src/test/java/test/AppTest.java b/src/it/projects/container-descriptors/metaInf-spring-aggregation/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/container-descriptors/metaInf-spring-aggregation/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/container-descriptors/metaInf-spring-aggregation/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/pom.xml b/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/pom.xml
index bc03626..330f4e0 100644
--- a/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/pom.xml
+++ b/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <parent>
     <artifactId>parent</artifactId>
diff --git a/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/src/assemble/bin.xml b/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/src/assemble/bin.xml
index 300cdea..e597301 100644
--- a/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/src/assemble/bin.xml
+++ b/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -21,4 +41,4 @@
       </excludes>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/src/main/java/test/App.java b/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/src/main/java/test/App.java
+++ b/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/src/test/java/test/AppTest.java b/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/src/test/java/test/AppTest.java
+++ b/src/it/projects/container-descriptors/metaInf-spring-aggregation/child2/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/container-descriptors/metaInf-spring-aggregation/pom.xml b/src/it/projects/container-descriptors/metaInf-spring-aggregation/pom.xml
index 0d61f01..e71f88b 100644
--- a/src/it/projects/container-descriptors/metaInf-spring-aggregation/pom.xml
+++ b/src/it/projects/container-descriptors/metaInf-spring-aggregation/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -16,4 +36,4 @@
     <module>child1</module>
     <module>child2</module>
   </modules>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/container-descriptors/metaInf-spring-aggregation/verify.bsh b/src/it/projects/container-descriptors/metaInf-spring-aggregation/verify.bsh
index 706c48c..81c1ff1 100644
--- a/src/it/projects/container-descriptors/metaInf-spring-aggregation/verify.bsh
+++ b/src/it/projects/container-descriptors/metaInf-spring-aggregation/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.util.jar.*;
 
diff --git a/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/pom.xml b/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/pom.xml
index 5ee976f..e588627 100644
--- a/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/pom.xml
+++ b/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/src/main/assembly/bin.xml b/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/src/main/assembly/bin.xml
index ad22925..2de4fd1 100644
--- a/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/src/main/assembly/bin.xml
+++ b/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -19,4 +39,4 @@
       </includes>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/src/main/java/test/App.java b/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/verify.bsh b/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/verify.bsh
index f5e2769..b2f0e50 100644
--- a/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/verify.bsh
+++ b/src/it/projects/dependency-sets/dep-transfilter-wildcard-massembly544/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File dir = new File( basedir, "target/dep-transfilter-wildcard-massembly544-1-bin/maven-libs" );
diff --git a/src/it/projects/dependency-sets/dep-with-transitive-filter/pom.xml b/src/it/projects/dependency-sets/dep-with-transitive-filter/pom.xml
index ee5bb53..59d04e3 100644
--- a/src/it/projects/dependency-sets/dep-with-transitive-filter/pom.xml
+++ b/src/it/projects/dependency-sets/dep-with-transitive-filter/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/dependency-sets/dep-with-transitive-filter/src/main/assembly/bin.xml b/src/it/projects/dependency-sets/dep-with-transitive-filter/src/main/assembly/bin.xml
index e4863c3..b43ffd6 100644
--- a/src/it/projects/dependency-sets/dep-with-transitive-filter/src/main/assembly/bin.xml
+++ b/src/it/projects/dependency-sets/dep-with-transitive-filter/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -19,4 +39,4 @@
       </includes>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/dependency-sets/dep-with-transitive-filter/src/main/java/test/App.java b/src/it/projects/dependency-sets/dep-with-transitive-filter/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dep-with-transitive-filter/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dep-with-transitive-filter/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dep-with-transitive-filter/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/dep-with-transitive-filter/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/dep-with-transitive-filter/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/dep-with-transitive-filter/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/dep-with-transitive-filter/verify.bsh b/src/it/projects/dependency-sets/dep-with-transitive-filter/verify.bsh
index 9cf8bdb..ef0b5f9 100644
--- a/src/it/projects/dependency-sets/dep-with-transitive-filter/verify.bsh
+++ b/src/it/projects/dependency-sets/dep-with-transitive-filter/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File wagonJackrabbitJar = new File( basedir, "target/project-1-bin/maven-libs/wagon-webdav-jackrabbit-1.0-beta-4.jar" );
diff --git a/src/it/projects/dependency-sets/depMgmt-override/child/pom.xml b/src/it/projects/dependency-sets/depMgmt-override/child/pom.xml
index deeb90c..34ce84b 100644
--- a/src/it/projects/dependency-sets/depMgmt-override/child/pom.xml
+++ b/src/it/projects/dependency-sets/depMgmt-override/child/pom.xml
@@ -1,46 +1,66 @@
-<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/maven-v4_0_0.xsd">

-

-  <modelVersion>4.0.0</modelVersion>

-  <parent>

-    <groupId>test</groupId>

-    <artifactId>parent</artifactId>

-    <version>1.0</version>

-   </parent>

-   

-  <artifactId>child</artifactId>

-  <packaging>pom</packaging>

-

-  <properties>

-    <test.version>2.2.1</test.version>

-  </properties>

-

-  <dependencies>

-    <dependency>

-      <groupId>org.apache.maven</groupId>

-      <artifactId>maven-plugin-api</artifactId>

-      <version>${test.version}</version>

-      <scope>compile</scope>

-    </dependency>

-  </dependencies>

-

-  <build>

-      <plugins>

-      <plugin>

-        <artifactId>maven-assembly-plugin</artifactId>

-        <executions>

-          <execution>

-            <phase>package</phase>

-            <goals>

-              <goal>single</goal>

-            </goals>

-          </execution>

-        </executions>

-        <configuration>

-          <descriptors>

-            <descriptor>src/assembly/bundle.xml</descriptor>

-          </descriptors>

-        </configuration>

-      </plugin>

-    </plugins>

-  </build>

-</project>

+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
+
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>test</groupId>
+    <artifactId>parent</artifactId>
+    <version>1.0</version>
+   </parent>
+   
+  <artifactId>child</artifactId>
+  <packaging>pom</packaging>
+
+  <properties>
+    <test.version>2.2.1</test.version>
+  </properties>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-plugin-api</artifactId>
+      <version>${test.version}</version>
+      <scope>compile</scope>
+    </dependency>
+  </dependencies>
+
+  <build>
+      <plugins>
+      <plugin>
+        <artifactId>maven-assembly-plugin</artifactId>
+        <executions>
+          <execution>
+            <phase>package</phase>
+            <goals>
+              <goal>single</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <descriptors>
+            <descriptor>src/assembly/bundle.xml</descriptor>
+          </descriptors>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+</project>
diff --git a/src/it/projects/dependency-sets/depMgmt-override/child/src/assembly/bundle.xml b/src/it/projects/dependency-sets/depMgmt-override/child/src/assembly/bundle.xml
index 635ed07..7ab391b 100644
--- a/src/it/projects/dependency-sets/depMgmt-override/child/src/assembly/bundle.xml
+++ b/src/it/projects/dependency-sets/depMgmt-override/child/src/assembly/bundle.xml
@@ -1,19 +1,39 @@
-<assembly>

-  <!-- TODO: Change ${pom.*} references to ${project.*} once maven-assembly-plugin 2.2-beta-3 is available -->

-  <includeBaseDirectory>false</includeBaseDirectory>

-  <id>bundle</id>

-  <formats>

-    <format>dir</format>

-  </formats>

-  

-  <dependencySets>

-    <dependencySet>

-      <unpack>false</unpack>

-      <useProjectArtifact>false</useProjectArtifact>

-      <outputDirectory>.</outputDirectory>

-      <includes>

-        <include>org.apache.maven:maven-plugin-api</include>

-      </includes>

-    </dependencySet>

-  </dependencySets>

-</assembly>

+<?xml version='1.0'?>
+<!--
+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.
+-->
+
+<assembly>
+  <!-- TODO: Change ${pom.*} references to ${project.*} once maven-assembly-plugin 2.2-beta-3 is available -->
+  <includeBaseDirectory>false</includeBaseDirectory>
+  <id>bundle</id>
+  <formats>
+    <format>dir</format>
+  </formats>
+  
+  <dependencySets>
+    <dependencySet>
+      <unpack>false</unpack>
+      <useProjectArtifact>false</useProjectArtifact>
+      <outputDirectory>.</outputDirectory>
+      <includes>
+        <include>org.apache.maven:maven-plugin-api</include>
+      </includes>
+    </dependencySet>
+  </dependencySets>
+</assembly>
diff --git a/src/it/projects/dependency-sets/depMgmt-override/pom.xml b/src/it/projects/dependency-sets/depMgmt-override/pom.xml
index f6c876a..2e91781 100644
--- a/src/it/projects/dependency-sets/depMgmt-override/pom.xml
+++ b/src/it/projects/dependency-sets/depMgmt-override/pom.xml
@@ -1,35 +1,55 @@
-<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/maven-v4_0_0.xsd">

-

-  <modelVersion>4.0.0</modelVersion>

-

-  <parent>

-    <groupId>org.apache.maven.plugin.assembly.test</groupId>

-    <artifactId>it-project-parent</artifactId>

-    <version>1</version>

-  </parent>

-  

-  <groupId>test</groupId>

-  <artifactId>parent</artifactId>

-  <version>1.0</version>

-  <packaging>pom</packaging>

-  

-  <modules>

-    <module>child</module>

-  </modules>

-

-  <properties>

-    <test.version>2.0.6</test.version>

-  </properties>

-

-  <dependencyManagement>

-    <dependencies>

-      <dependency>

-        <groupId>org.apache.maven</groupId>

-        <artifactId>maven-plugin-api</artifactId>

-        <version>2.0.6</version>

-        <scope>compile</scope>

-      </dependency>

-    </dependencies>

-  </dependencyManagement>

-

-</project>

+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
+
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.apache.maven.plugin.assembly.test</groupId>
+    <artifactId>it-project-parent</artifactId>
+    <version>1</version>
+  </parent>
+  
+  <groupId>test</groupId>
+  <artifactId>parent</artifactId>
+  <version>1.0</version>
+  <packaging>pom</packaging>
+  
+  <modules>
+    <module>child</module>
+  </modules>
+
+  <properties>
+    <test.version>2.0.6</test.version>
+  </properties>
+
+  <dependencyManagement>
+    <dependencies>
+      <dependency>
+        <groupId>org.apache.maven</groupId>
+        <artifactId>maven-plugin-api</artifactId>
+        <version>2.0.6</version>
+        <scope>compile</scope>
+      </dependency>
+    </dependencies>
+  </dependencyManagement>
+
+</project>
diff --git a/src/it/projects/dependency-sets/depMgmt-override/verify.bsh b/src/it/projects/dependency-sets/depMgmt-override/verify.bsh
index d1c7637..6440a7f 100644
--- a/src/it/projects/dependency-sets/depMgmt-override/verify.bsh
+++ b/src/it/projects/dependency-sets/depMgmt-override/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File f = new File( basedir, "child/target/child-1.0-bundle/maven-plugin-api-2.2.1.jar" );
@@ -15,4 +34,4 @@
   return false;
 }
 
-return true;
\ No newline at end of file
+return true;
diff --git a/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/child1/pom.xml b/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/child1/pom.xml
index dac7566..ee7257e 100644
--- a/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/child1/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?>
+
+<!--
+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>
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -11,4 +31,4 @@
   <properties>
     <foo>bar</foo>
   </properties>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/child2/pom.xml b/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/child2/pom.xml
index 069d38a..0d799e1 100644
--- a/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/child2/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/child2/src/assemble/bin.xml b/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/child2/src/assemble/bin.xml
index c9df8c5..2bef25f 100644
--- a/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/child2/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
@@ -14,4 +34,4 @@
       <outputDirectory>${artifact.properties.foo}</outputDirectory>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/pom.xml b/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/pom.xml
index c51b25d..bbad5ca 100644
--- a/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -16,4 +36,4 @@
     <module>child1</module>
     <module>child2</module>
   </modules>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/verify.bsh b/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/verify.bsh
index 68dbd85..bba6e83 100644
--- a/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/verify.bsh
+++ b/src/it/projects/dependency-sets/depSet-artifactPomPropInterp/verify.bsh
@@ -1,4 +1,23 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File f = new File( basedir, "child2/target/child2-1-bin/bar/child1-1.jar" );
-return f.exists() && f.isFile();
\ No newline at end of file
+return f.exists() && f.isFile();
diff --git a/src/it/projects/dependency-sets/depSet-byDepVersion/child1/pom.xml b/src/it/projects/dependency-sets/depSet-byDepVersion/child1/pom.xml
index fa76f4c..ea8d89d 100644
--- a/src/it/projects/dependency-sets/depSet-byDepVersion/child1/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-byDepVersion/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/dependency-sets/depSet-byDepVersion/child1/src/main/java/test/App.java b/src/it/projects/dependency-sets/depSet-byDepVersion/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/depSet-byDepVersion/child1/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/depSet-byDepVersion/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/depSet-byDepVersion/child2/pom.xml b/src/it/projects/dependency-sets/depSet-byDepVersion/child2/pom.xml
index e2a99ca6..ca764f6 100644
--- a/src/it/projects/dependency-sets/depSet-byDepVersion/child2/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-byDepVersion/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <parent>
     <artifactId>parent</artifactId>
diff --git a/src/it/projects/dependency-sets/depSet-byDepVersion/child2/src/main/java/test/App.java b/src/it/projects/dependency-sets/depSet-byDepVersion/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/depSet-byDepVersion/child2/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/depSet-byDepVersion/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/depSet-byDepVersion/child3/pom.xml b/src/it/projects/dependency-sets/depSet-byDepVersion/child3/pom.xml
index 8d4c37f..7ff08ad 100644
--- a/src/it/projects/dependency-sets/depSet-byDepVersion/child3/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-byDepVersion/child3/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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>
diff --git a/src/it/projects/dependency-sets/depSet-byDepVersion/child3/src/main/assembly/bin.xml b/src/it/projects/dependency-sets/depSet-byDepVersion/child3/src/main/assembly/bin.xml
index bdbe696..c6cfac0 100644
--- a/src/it/projects/dependency-sets/depSet-byDepVersion/child3/src/main/assembly/bin.xml
+++ b/src/it/projects/dependency-sets/depSet-byDepVersion/child3/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly>
   <id>bin</id>
   <formats>
@@ -11,4 +31,4 @@
       <outputDirectory>${artifact.baseVersion}</outputDirectory>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/dependency-sets/depSet-byDepVersion/pom.xml b/src/it/projects/dependency-sets/depSet-byDepVersion/pom.xml
index 0e9c9f6..bc6177d 100644
--- a/src/it/projects/dependency-sets/depSet-byDepVersion/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-byDepVersion/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/depSet-byDepVersion/verify.bsh b/src/it/projects/dependency-sets/depSet-byDepVersion/verify.bsh
index 16b088e..bffb373 100644
--- a/src/it/projects/dependency-sets/depSet-byDepVersion/verify.bsh
+++ b/src/it/projects/dependency-sets/depSet-byDepVersion/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 try
diff --git a/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/enum/pom.xml b/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/enum/pom.xml
index f424c1e..1e8a527 100644
--- a/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/enum/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/enum/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
diff --git a/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/enum/src/main/assembly/bin.xml b/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/enum/src/main/assembly/bin.xml
index 8bbd8b6..d7bc970 100644
--- a/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/enum/src/main/assembly/bin.xml
+++ b/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/enum/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly>
     <id>bin</id>
     <formats>
diff --git a/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/pom.xml b/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/pom.xml
index d253c6b..9c2d612 100644
--- a/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/verify.bsh b/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/verify.bsh
index 0162af1..734f6c7 100644
--- a/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/verify.bsh
+++ b/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.util.*;
 import java.util.jar.*;
diff --git a/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/wildcard/pom.xml b/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/wildcard/pom.xml
index 3e534b8..4bb3ac3 100644
--- a/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/wildcard/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/wildcard/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
diff --git a/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/wildcard/src/main/assembly/bin.xml b/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/wildcard/src/main/assembly/bin.xml
index cc18204..6e65991 100644
--- a/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/wildcard/src/main/assembly/bin.xml
+++ b/src/it/projects/dependency-sets/depSet-enum-vs-wildcard/wildcard/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly>
     <id>bin</id>
     <formats>
diff --git a/src/it/projects/dependency-sets/depSet-runtimeScope/child1/pom.xml b/src/it/projects/dependency-sets/depSet-runtimeScope/child1/pom.xml
index fa76f4c..ea8d89d 100644
--- a/src/it/projects/dependency-sets/depSet-runtimeScope/child1/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-runtimeScope/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/dependency-sets/depSet-runtimeScope/child1/src/main/java/test/App.java b/src/it/projects/dependency-sets/depSet-runtimeScope/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/depSet-runtimeScope/child1/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/depSet-runtimeScope/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/depSet-runtimeScope/child2/pom.xml b/src/it/projects/dependency-sets/depSet-runtimeScope/child2/pom.xml
index e2a99ca6..ca764f6 100644
--- a/src/it/projects/dependency-sets/depSet-runtimeScope/child2/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-runtimeScope/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <parent>
     <artifactId>parent</artifactId>
diff --git a/src/it/projects/dependency-sets/depSet-runtimeScope/child2/src/main/java/test/App.java b/src/it/projects/dependency-sets/depSet-runtimeScope/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/depSet-runtimeScope/child2/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/depSet-runtimeScope/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/depSet-runtimeScope/child3/pom.xml b/src/it/projects/dependency-sets/depSet-runtimeScope/child3/pom.xml
index 8d4c37f..7ff08ad 100644
--- a/src/it/projects/dependency-sets/depSet-runtimeScope/child3/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-runtimeScope/child3/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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>
diff --git a/src/it/projects/dependency-sets/depSet-runtimeScope/child3/src/main/assembly/bin.xml b/src/it/projects/dependency-sets/depSet-runtimeScope/child3/src/main/assembly/bin.xml
index fa66a34..f66d3ac 100644
--- a/src/it/projects/dependency-sets/depSet-runtimeScope/child3/src/main/assembly/bin.xml
+++ b/src/it/projects/dependency-sets/depSet-runtimeScope/child3/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly>
   <id>bin</id>
   <formats>
@@ -10,4 +30,4 @@
       <useProjectArtifact>false</useProjectArtifact>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/dependency-sets/depSet-runtimeScope/pom.xml b/src/it/projects/dependency-sets/depSet-runtimeScope/pom.xml
index 0e9c9f6..bc6177d 100644
--- a/src/it/projects/dependency-sets/depSet-runtimeScope/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-runtimeScope/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/depSet-runtimeScope/verify.bsh b/src/it/projects/dependency-sets/depSet-runtimeScope/verify.bsh
index df96aa1..155a1d0 100644
--- a/src/it/projects/dependency-sets/depSet-runtimeScope/verify.bsh
+++ b/src/it/projects/dependency-sets/depSet-runtimeScope/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 try
diff --git a/src/it/projects/dependency-sets/depSet-transFromProfile/child1/pom.xml b/src/it/projects/dependency-sets/depSet-transFromProfile/child1/pom.xml
index eacba55..74dc08d 100644
--- a/src/it/projects/dependency-sets/depSet-transFromProfile/child1/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-transFromProfile/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/dependency-sets/depSet-transFromProfile/child1/src/main/java/test/App.java b/src/it/projects/dependency-sets/depSet-transFromProfile/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/depSet-transFromProfile/child1/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/depSet-transFromProfile/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/depSet-transFromProfile/child2/pom.xml b/src/it/projects/dependency-sets/depSet-transFromProfile/child2/pom.xml
index ad091e8..b36c135 100644
--- a/src/it/projects/dependency-sets/depSet-transFromProfile/child2/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-transFromProfile/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <parent>
     <artifactId>parent</artifactId>
diff --git a/src/it/projects/dependency-sets/depSet-transFromProfile/child2/src/assemble/bin.xml b/src/it/projects/dependency-sets/depSet-transFromProfile/child2/src/assemble/bin.xml
index 79cf046..b449e20 100644
--- a/src/it/projects/dependency-sets/depSet-transFromProfile/child2/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/depSet-transFromProfile/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/depSet-transFromProfile/child2/src/main/java/test/App.java b/src/it/projects/dependency-sets/depSet-transFromProfile/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/depSet-transFromProfile/child2/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/depSet-transFromProfile/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/depSet-transFromProfile/child3/pom.xml b/src/it/projects/dependency-sets/depSet-transFromProfile/child3/pom.xml
index 1bc473e..93bdea9 100644
--- a/src/it/projects/dependency-sets/depSet-transFromProfile/child3/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-transFromProfile/child3/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/dependency-sets/depSet-transFromProfile/child3/src/main/java/test/App.java b/src/it/projects/dependency-sets/depSet-transFromProfile/child3/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/depSet-transFromProfile/child3/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/depSet-transFromProfile/child3/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/depSet-transFromProfile/child4/pom.xml b/src/it/projects/dependency-sets/depSet-transFromProfile/child4/pom.xml
index 0b8fdb5..f27916a 100644
--- a/src/it/projects/dependency-sets/depSet-transFromProfile/child4/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-transFromProfile/child4/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/dependency-sets/depSet-transFromProfile/child4/src/main/assembly/bin.xml b/src/it/projects/dependency-sets/depSet-transFromProfile/child4/src/main/assembly/bin.xml
index f4d1df7..97b3aaa 100644
--- a/src/it/projects/dependency-sets/depSet-transFromProfile/child4/src/main/assembly/bin.xml
+++ b/src/it/projects/dependency-sets/depSet-transFromProfile/child4/src/main/assembly/bin.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?>
+
+<!--
+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.
+-->
+
 <assembly>
   <id>bin</id>
   <formats>
diff --git a/src/it/projects/dependency-sets/depSet-transFromProfile/child4/src/main/java/test/App.java b/src/it/projects/dependency-sets/depSet-transFromProfile/child4/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/depSet-transFromProfile/child4/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/depSet-transFromProfile/child4/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/depSet-transFromProfile/pom.xml b/src/it/projects/dependency-sets/depSet-transFromProfile/pom.xml
index 113c321..81cde6b 100644
--- a/src/it/projects/dependency-sets/depSet-transFromProfile/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-transFromProfile/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/depSet-transFromProfile/test.properties b/src/it/projects/dependency-sets/depSet-transFromProfile/test.properties
index 6d9ead7..a280106 100644
--- a/src/it/projects/dependency-sets/depSet-transFromProfile/test.properties
+++ b/src/it/projects/dependency-sets/depSet-transFromProfile/test.properties
@@ -1 +1,18 @@
-test-profile=true
\ No newline at end of file
+# 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.
+
+test-profile=true
diff --git a/src/it/projects/dependency-sets/depSet-transFromProfile/verify.bsh b/src/it/projects/dependency-sets/depSet-transFromProfile/verify.bsh
index 5b3dee0..0a76930 100644
--- a/src/it/projects/dependency-sets/depSet-transFromProfile/verify.bsh
+++ b/src/it/projects/dependency-sets/depSet-transFromProfile/verify.bsh
@@ -1 +1,20 @@
+/*
+ * 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.
+ */
+
 return new java.io.File( basedir, "child4/target/child4-1.0-SNAPSHOT-bin/child3-1.0-SNAPSHOT.jar" ).exists();
diff --git a/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child1/pom.xml b/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child1/pom.xml
index 27ef767..f91c3fc 100644
--- a/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child1/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>test</groupId>
@@ -6,4 +26,4 @@
   </parent>
   <modelVersion>4.0.0</modelVersion>
   <artifactId>child1</artifactId>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child2/pom.xml b/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child2/pom.xml
index 3268a47..33b41f7 100644
--- a/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child2/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <parent>
     <artifactId>parent</artifactId>
diff --git a/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child2/src/assemble/bin.xml b/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child2/src/assemble/bin.xml
index 71b415d..6452a11 100644
--- a/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child2/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -17,4 +37,4 @@
       <directoryMode>0555</directoryMode>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child2/src/main/java/test/App.java b/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child2/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/depSet-unpacked-rdonly/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/depSet-unpacked-rdonly/pom.xml b/src/it/projects/dependency-sets/depSet-unpacked-rdonly/pom.xml
index 0d61f01..e71f88b 100644
--- a/src/it/projects/dependency-sets/depSet-unpacked-rdonly/pom.xml
+++ b/src/it/projects/dependency-sets/depSet-unpacked-rdonly/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -16,4 +36,4 @@
     <module>child1</module>
     <module>child2</module>
   </modules>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/dependency-sets/depSet-unpacked-rdonly/verify.bsh b/src/it/projects/dependency-sets/depSet-unpacked-rdonly/verify.bsh
index aa14080..1b2a6b3 100644
--- a/src/it/projects/dependency-sets/depSet-unpacked-rdonly/verify.bsh
+++ b/src/it/projects/dependency-sets/depSet-unpacked-rdonly/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File file = new File( basedir, "child2/target/child2-1.0-SNAPSHOT-bin/child1/test.txt" );
diff --git a/src/it/projects/dependency-sets/dependencySet-matchScope/child1/pom.xml b/src/it/projects/dependency-sets/dependencySet-matchScope/child1/pom.xml
index 653dde9..034afe2 100644
--- a/src/it/projects/dependency-sets/dependencySet-matchScope/child1/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-matchScope/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>dependencySet-matchScope</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/dependency-sets/dependencySet-matchScope/child1/src/main/java/test/App.java b/src/it/projects/dependency-sets/dependencySet-matchScope/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-matchScope/child1/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dependencySet-matchScope/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-matchScope/child1/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/dependencySet-matchScope/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/dependencySet-matchScope/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/dependencySet-matchScope/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/dependencySet-matchScope/child2/pom.xml b/src/it/projects/dependency-sets/dependencySet-matchScope/child2/pom.xml
index 2528df5..17df2b2 100644
--- a/src/it/projects/dependency-sets/dependencySet-matchScope/child2/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-matchScope/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <parent>
     <artifactId>dependencySet-matchScope</artifactId>
diff --git a/src/it/projects/dependency-sets/dependencySet-matchScope/child2/src/assemble/bin.xml b/src/it/projects/dependency-sets/dependencySet-matchScope/child2/src/assemble/bin.xml
index 1632474..5dc2d4b 100644
--- a/src/it/projects/dependency-sets/dependencySet-matchScope/child2/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/dependencySet-matchScope/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/dependencySet-matchScope/child2/src/main/java/test/App.java b/src/it/projects/dependency-sets/dependencySet-matchScope/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-matchScope/child2/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dependencySet-matchScope/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-matchScope/child2/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/dependencySet-matchScope/child2/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/dependencySet-matchScope/child2/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/dependencySet-matchScope/child2/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/dependencySet-matchScope/pom.xml b/src/it/projects/dependency-sets/dependencySet-matchScope/pom.xml
index e9df3ad2..61b695e 100644
--- a/src/it/projects/dependency-sets/dependencySet-matchScope/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-matchScope/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/dependencySet-matchScope/verify.bsh b/src/it/projects/dependency-sets/dependencySet-matchScope/verify.bsh
index 123263c..8b29f24 100644
--- a/src/it/projects/dependency-sets/dependencySet-matchScope/verify.bsh
+++ b/src/it/projects/dependency-sets/dependencySet-matchScope/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/dependency-sets/dependencySet-nonTransitive/child1/pom.xml b/src/it/projects/dependency-sets/dependencySet-nonTransitive/child1/pom.xml
index 1d0479e..1d9f073 100644
--- a/src/it/projects/dependency-sets/dependencySet-nonTransitive/child1/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-nonTransitive/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>dependencySet-nonTransitive</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/dependency-sets/dependencySet-nonTransitive/child1/src/main/java/test/App.java b/src/it/projects/dependency-sets/dependencySet-nonTransitive/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-nonTransitive/child1/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dependencySet-nonTransitive/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-nonTransitive/child1/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/dependencySet-nonTransitive/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/dependencySet-nonTransitive/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/dependencySet-nonTransitive/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/dependencySet-nonTransitive/child2/pom.xml b/src/it/projects/dependency-sets/dependencySet-nonTransitive/child2/pom.xml
index 0d76dcb..8d021f5 100644
--- a/src/it/projects/dependency-sets/dependencySet-nonTransitive/child2/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-nonTransitive/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>dependencySet-nonTransitive</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/dependency-sets/dependencySet-nonTransitive/child2/src/assemble/bin.xml b/src/it/projects/dependency-sets/dependencySet-nonTransitive/child2/src/assemble/bin.xml
index 621e141..ff3b767 100644
--- a/src/it/projects/dependency-sets/dependencySet-nonTransitive/child2/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/dependencySet-nonTransitive/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/dependencySet-nonTransitive/child2/src/main/java/test/App.java b/src/it/projects/dependency-sets/dependencySet-nonTransitive/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-nonTransitive/child2/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dependencySet-nonTransitive/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-nonTransitive/pom.xml b/src/it/projects/dependency-sets/dependencySet-nonTransitive/pom.xml
index 67ddab1..19ad363 100644
--- a/src/it/projects/dependency-sets/dependencySet-nonTransitive/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-nonTransitive/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/dependencySet-nonTransitive/verify.bsh b/src/it/projects/dependency-sets/dependencySet-nonTransitive/verify.bsh
index 123263c..8b29f24 100644
--- a/src/it/projects/dependency-sets/dependencySet-nonTransitive/verify.bsh
+++ b/src/it/projects/dependency-sets/dependencySet-nonTransitive/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/dependency-sets/dependencySet-notUnpacked/child1/pom.xml b/src/it/projects/dependency-sets/dependencySet-notUnpacked/child1/pom.xml
index 980a92c..44f495e 100644
--- a/src/it/projects/dependency-sets/dependencySet-notUnpacked/child1/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-notUnpacked/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>dependencySet-notUnpacked</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/dependency-sets/dependencySet-notUnpacked/child1/src/main/java/test/App.java b/src/it/projects/dependency-sets/dependencySet-notUnpacked/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-notUnpacked/child1/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dependencySet-notUnpacked/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-notUnpacked/child1/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/dependencySet-notUnpacked/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/dependencySet-notUnpacked/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/dependencySet-notUnpacked/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/pom.xml b/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/pom.xml
index bc80f68..bd74820 100644
--- a/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <parent>
     <artifactId>dependencySet-notUnpacked</artifactId>
diff --git a/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/src/assemble/bin.xml b/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/src/assemble/bin.xml
index 79cf046..b449e20 100644
--- a/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/src/main/java/test/App.java b/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/dependencySet-notUnpacked/child2/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/dependencySet-notUnpacked/pom.xml b/src/it/projects/dependency-sets/dependencySet-notUnpacked/pom.xml
index 2a0867e..1168770 100644
--- a/src/it/projects/dependency-sets/dependencySet-notUnpacked/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-notUnpacked/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/dependencySet-notUnpacked/verify.bsh b/src/it/projects/dependency-sets/dependencySet-notUnpacked/verify.bsh
index 123263c..8b29f24 100644
--- a/src/it/projects/dependency-sets/dependencySet-notUnpacked/verify.bsh
+++ b/src/it/projects/dependency-sets/dependencySet-notUnpacked/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/pom.xml b/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/pom.xml
index 8ceaed4..2746f14 100644
--- a/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?>
+
+<!--
+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>
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/src/assembly/bin.xml b/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/src/assembly/bin.xml
index 2c9df3c..7a10fbe 100644
--- a/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/src/assembly/bin.xml
+++ b/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/src/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/src/main/java/foo/Foo.java b/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/src/main/java/foo/Foo.java
index 6942d56..bd77ef3 100644
--- a/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/src/main/java/foo/Foo.java
+++ b/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/src/main/java/foo/Foo.java
@@ -1,7 +1,27 @@
 package foo;
 
+/*
+ * 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.
+ */
+
+
 public class Foo {
     public static void main(String[] args) {
         System.out.println("Hello, World!");
     }
-}
\ No newline at end of file
+}
diff --git a/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/src/main/webapp/WEB-INF/web.xml b/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/src/main/webapp/WEB-INF/web.xml
index 54e2bb0..1e2dfe8 100644
--- a/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/src/main/webapp/WEB-INF/web.xml
+++ b/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/src/main/webapp/WEB-INF/web.xml
@@ -1,4 +1,24 @@
 <?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.
+-->
+
 <!DOCTYPE web-app
       PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
       "http://java.sun.com/dtd/web-app_2_3.dtd">
diff --git a/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/verify.bsh b/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/verify.bsh
index dd5fd1f..00be9cf 100644
--- a/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/verify.bsh
+++ b/src/it/projects/dependency-sets/dependencySet-projectArtifactNotIncluded/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 if ( basedir == void )
diff --git a/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/child1/pom.xml b/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/child1/pom.xml
index 64f1855..39a1280 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/child1/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?>
+
+<!--
+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>
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -8,4 +28,4 @@
   </parent>
   <artifactId>child1</artifactId>
   <name>Maven Quick Start Archetype</name>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/child2/pom.xml b/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/child2/pom.xml
index d5a4be4..37d60da 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/child2/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/child2/src/assemble/bin.xml b/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/child2/src/assemble/bin.xml
index f0c61d7..d3af12b 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/child2/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
@@ -21,4 +41,4 @@
       </unpackOptions>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/pom.xml b/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/pom.xml
index c51b25d..bbad5ca 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -16,4 +36,4 @@
     <module>child1</module>
     <module>child2</module>
   </modules>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/verify.bsh b/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/verify.bsh
index 29ad23e..631cf57 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/verify.bsh
+++ b/src/it/projects/dependency-sets/dependencySet-unpacked-filtered/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 try
diff --git a/src/it/projects/dependency-sets/dependencySet-unpacked/child1/pom.xml b/src/it/projects/dependency-sets/dependencySet-unpacked/child1/pom.xml
index fd203a0..ab0c300 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpacked/child1/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpacked/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>dependencySet-unpacked</artifactId>
     <groupId>test</groupId>
@@ -17,4 +37,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/dependency-sets/dependencySet-unpacked/child1/src/main/java/test/App.java b/src/it/projects/dependency-sets/dependencySet-unpacked/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpacked/child1/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dependencySet-unpacked/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-unpacked/child1/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/dependencySet-unpacked/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpacked/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/dependencySet-unpacked/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/dependencySet-unpacked/child2/pom.xml b/src/it/projects/dependency-sets/dependencySet-unpacked/child2/pom.xml
index d87bcc1..c59ee65 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpacked/child2/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpacked/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <parent>
     <artifactId>dependencySet-unpacked</artifactId>
diff --git a/src/it/projects/dependency-sets/dependencySet-unpacked/child2/src/assemble/bin.xml b/src/it/projects/dependency-sets/dependencySet-unpacked/child2/src/assemble/bin.xml
index 95b7a00..153a6b2 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpacked/child2/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpacked/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -19,4 +39,4 @@
       </excludes>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/dependency-sets/dependencySet-unpacked/child2/src/main/java/test/App.java b/src/it/projects/dependency-sets/dependencySet-unpacked/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpacked/child2/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dependencySet-unpacked/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-unpacked/child2/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/dependencySet-unpacked/child2/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpacked/child2/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/dependencySet-unpacked/child2/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/dependencySet-unpacked/pom.xml b/src/it/projects/dependency-sets/dependencySet-unpacked/pom.xml
index cdc8467..d6e0d0d 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpacked/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpacked/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -16,4 +36,4 @@
     <module>child1</module>
     <module>child2</module>
   </modules>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/dependency-sets/dependencySet-unpacked/verify.bsh b/src/it/projects/dependency-sets/dependencySet-unpacked/verify.bsh
index 4185fc9..1425d9e 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpacked/verify.bsh
+++ b/src/it/projects/dependency-sets/dependencySet-unpacked/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child1/pom.xml b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child1/pom.xml
index 2de7f8e..9257d76 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child1/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>dependencySet-unpackedExcludingMetaInf</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child1/src/main/java/test/App.java b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child1/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child1/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/pom.xml b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/pom.xml
index 39edb81..4c20549 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <parent>
     <artifactId>dependencySet-unpackedExcludingMetaInf</artifactId>
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/src/assemble/bin.xml b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/src/assemble/bin.xml
index 52dfd0d..ce15875 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/src/main/java/test/App.java b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/child2/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/pom.xml b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/pom.xml
index 64b0bcb..001616d 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/pom.xml
@@ -1,10 +1,31 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
     <groupId>org.apache.maven.plugin.assembly.test</groupId>
     <artifactId>it-project-parent</artifactId>
     <version>1</version>
+    <relativePath>../../../it-project-parent/pom.xml</relativePath>
   </parent>
   
   <groupId>test</groupId>
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/verify.bsh b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/verify.bsh
index b4f70c0..6264f72 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/verify.bsh
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedExcludingMetaInf/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/pom.xml b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/pom.xml
index f5ae1f0..e644626 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>dependencySet-unpackedSubsetsTwice</artifactId>
     <groupId>test</groupId>
@@ -15,4 +35,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/src/main/java/test/App.java b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/src/main/java/test/App2.java b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/src/main/java/test/App2.java
index 224dea9..6cdfeb5 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/src/main/java/test/App2.java
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/src/main/java/test/App2.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/pom.xml b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/pom.xml
index 88292fd..deda144 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <parent>
     <artifactId>dependencySet-unpackedSubsetsTwice</artifactId>
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/src/assemble/bin.xml b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/src/assemble/bin.xml
index 6515ec7..7bb748b 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/src/main/java/test/App.java b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/child2/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/pom.xml b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/pom.xml
index d707825..bec023d 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -16,4 +36,4 @@
     <module>child1</module>
     <module>child2</module>
   </modules>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/verify.bsh b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/verify.bsh
index b310867..5cc4493 100644
--- a/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/verify.bsh
+++ b/src/it/projects/dependency-sets/dependencySet-unpackedSubsetsTwice/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child1/pom.xml b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child1/pom.xml
index 18be721..f5521f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child1/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>dependencySet-withExecutedProject</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child1/src/main/java/test/App.java b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child1/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child1/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child2/pom.xml b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child2/pom.xml
index 451ca84..98ea8af 100644
--- a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child2/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>dependencySet-withExecutedProject</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child2/src/assemble/bin.xml b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child2/src/assemble/bin.xml
index 29b282a..88fdf14 100644
--- a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child2/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child2/src/main/java/test/App.java b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child2/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/pom.xml b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/pom.xml
index 5db74b9..0ecfe4c 100644
--- a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/pom.xml
+++ b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <modelVersion>4.0.0</modelVersion>
   <parent>
     <groupId>org.apache.maven.plugin.assembly.test</groupId>
diff --git a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/src/assemble/bin.xml b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/src/assemble/bin.xml
index 1632474..5dc2d4b 100644
--- a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/src/main/java/test/App.java b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/verify.bsh b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/verify.bsh
index 193ec61..8f4aeba 100644
--- a/src/it/projects/dependency-sets/dependencySet-withExecutedProject/verify.bsh
+++ b/src/it/projects/dependency-sets/dependencySet-withExecutedProject/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/dependency-sets/include-project-artifact/pom.xml b/src/it/projects/dependency-sets/include-project-artifact/pom.xml
index 525de11..7780780 100644
--- a/src/it/projects/dependency-sets/include-project-artifact/pom.xml
+++ b/src/it/projects/dependency-sets/include-project-artifact/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/include-project-artifact/src/main/assembly/bin.xml b/src/it/projects/dependency-sets/include-project-artifact/src/main/assembly/bin.xml
index 1dfa5ff..a513eab 100644
--- a/src/it/projects/dependency-sets/include-project-artifact/src/main/assembly/bin.xml
+++ b/src/it/projects/dependency-sets/include-project-artifact/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/include-project-artifact/src/main/java/test/App.java b/src/it/projects/dependency-sets/include-project-artifact/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/include-project-artifact/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/include-project-artifact/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/include-project-artifact/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/include-project-artifact/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/include-project-artifact/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/include-project-artifact/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/include-project-artifact/verify.bsh b/src/it/projects/dependency-sets/include-project-artifact/verify.bsh
index 236b797..1c9fd40 100644
--- a/src/it/projects/dependency-sets/include-project-artifact/verify.bsh
+++ b/src/it/projects/dependency-sets/include-project-artifact/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/dependency-sets/include-project-attachments/pom.xml b/src/it/projects/dependency-sets/include-project-attachments/pom.xml
index d17e046..e784e4a 100644
--- a/src/it/projects/dependency-sets/include-project-attachments/pom.xml
+++ b/src/it/projects/dependency-sets/include-project-attachments/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/include-project-attachments/src/main/assembly/bin.xml b/src/it/projects/dependency-sets/include-project-attachments/src/main/assembly/bin.xml
index 242f53b..d561661 100644
--- a/src/it/projects/dependency-sets/include-project-attachments/src/main/assembly/bin.xml
+++ b/src/it/projects/dependency-sets/include-project-attachments/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/include-project-attachments/src/main/assembly/src.xml b/src/it/projects/dependency-sets/include-project-attachments/src/main/assembly/src.xml
index 2629591..6974e86 100644
--- a/src/it/projects/dependency-sets/include-project-attachments/src/main/assembly/src.xml
+++ b/src/it/projects/dependency-sets/include-project-attachments/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -15,4 +35,4 @@
       </excludes>
     </fileSet>
   </fileSets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/dependency-sets/include-project-attachments/src/main/java/test/App.java b/src/it/projects/dependency-sets/include-project-attachments/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/include-project-attachments/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/include-project-attachments/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/include-project-attachments/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/include-project-attachments/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/include-project-attachments/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/include-project-attachments/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/include-project-attachments/verify.bsh b/src/it/projects/dependency-sets/include-project-attachments/verify.bsh
index 1569a6d..ed176af 100644
--- a/src/it/projects/dependency-sets/include-project-attachments/verify.bsh
+++ b/src/it/projects/dependency-sets/include-project-attachments/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/dependency-sets/include-provided/child1/pom.xml b/src/it/projects/dependency-sets/include-provided/child1/pom.xml
index e61ab5d..745cde3 100644
--- a/src/it/projects/dependency-sets/include-provided/child1/pom.xml
+++ b/src/it/projects/dependency-sets/include-provided/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>include-provided</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/dependency-sets/include-provided/child1/src/main/java/test/App.java b/src/it/projects/dependency-sets/include-provided/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/include-provided/child1/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/include-provided/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/include-provided/child1/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/include-provided/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/include-provided/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/include-provided/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/include-provided/child2/pom.xml b/src/it/projects/dependency-sets/include-provided/child2/pom.xml
index 63d7486..0743329 100644
--- a/src/it/projects/dependency-sets/include-provided/child2/pom.xml
+++ b/src/it/projects/dependency-sets/include-provided/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <parent>
     <artifactId>include-provided</artifactId>
diff --git a/src/it/projects/dependency-sets/include-provided/child2/src/assemble/bin.xml b/src/it/projects/dependency-sets/include-provided/child2/src/assemble/bin.xml
index 0eda1ea..763dbd2 100644
--- a/src/it/projects/dependency-sets/include-provided/child2/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/include-provided/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/include-provided/child2/src/main/java/test/App.java b/src/it/projects/dependency-sets/include-provided/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/include-provided/child2/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/include-provided/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/include-provided/child2/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/include-provided/child2/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/include-provided/child2/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/include-provided/child2/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/include-provided/pom.xml b/src/it/projects/dependency-sets/include-provided/pom.xml
index 54f050e..e6adb3c 100644
--- a/src/it/projects/dependency-sets/include-provided/pom.xml
+++ b/src/it/projects/dependency-sets/include-provided/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/include-provided/verify.bsh b/src/it/projects/dependency-sets/include-provided/verify.bsh
index 123263c..8b29f24 100644
--- a/src/it/projects/dependency-sets/include-provided/verify.bsh
+++ b/src/it/projects/dependency-sets/include-provided/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/dependency-sets/including-pom-dependency/pom.xml b/src/it/projects/dependency-sets/including-pom-dependency/pom.xml
index e0fa441..57ff0d6 100644
--- a/src/it/projects/dependency-sets/including-pom-dependency/pom.xml
+++ b/src/it/projects/dependency-sets/including-pom-dependency/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/dependency-sets/including-pom-dependency/src/assemble/bin.xml b/src/it/projects/dependency-sets/including-pom-dependency/src/assemble/bin.xml
index a8ce1eb..24644b6 100644
--- a/src/it/projects/dependency-sets/including-pom-dependency/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/including-pom-dependency/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/including-pom-dependency/src/main/java/com/nf/ass/App.java b/src/it/projects/dependency-sets/including-pom-dependency/src/main/java/com/nf/ass/App.java
index cf1a50f..5e58c53 100644
--- a/src/it/projects/dependency-sets/including-pom-dependency/src/main/java/com/nf/ass/App.java
+++ b/src/it/projects/dependency-sets/including-pom-dependency/src/main/java/com/nf/ass/App.java
@@ -1,5 +1,25 @@
 package com.nf.ass;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/including-pom-dependency/verify.bsh b/src/it/projects/dependency-sets/including-pom-dependency/verify.bsh
index 3b6ac22..bf0e341 100644
--- a/src/it/projects/dependency-sets/including-pom-dependency/verify.bsh
+++ b/src/it/projects/dependency-sets/including-pom-dependency/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/dependency-sets/including-sar-dependency/pom.xml b/src/it/projects/dependency-sets/including-sar-dependency/pom.xml
index 935b27a..16ae3ac 100644
--- a/src/it/projects/dependency-sets/including-sar-dependency/pom.xml
+++ b/src/it/projects/dependency-sets/including-sar-dependency/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/dependency-sets/including-sar-dependency/src/assemble/bin.xml b/src/it/projects/dependency-sets/including-sar-dependency/src/assemble/bin.xml
index adab32f..d3cda55 100644
--- a/src/it/projects/dependency-sets/including-sar-dependency/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/including-sar-dependency/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/including-sar-dependency/src/main/java/com/nf/ass/App.java b/src/it/projects/dependency-sets/including-sar-dependency/src/main/java/com/nf/ass/App.java
index cf1a50f..5e58c53 100644
--- a/src/it/projects/dependency-sets/including-sar-dependency/src/main/java/com/nf/ass/App.java
+++ b/src/it/projects/dependency-sets/including-sar-dependency/src/main/java/com/nf/ass/App.java
@@ -1,5 +1,25 @@
 package com.nf.ass;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/including-sar-dependency/verify.bsh b/src/it/projects/dependency-sets/including-sar-dependency/verify.bsh
index d00bdb6..9842bdf 100644
--- a/src/it/projects/dependency-sets/including-sar-dependency/verify.bsh
+++ b/src/it/projects/dependency-sets/including-sar-dependency/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/dependency-sets/massembly-201/pom.xml b/src/it/projects/dependency-sets/massembly-201/pom.xml
index f67e8a7..7a17783 100644
--- a/src/it/projects/dependency-sets/massembly-201/pom.xml
+++ b/src/it/projects/dependency-sets/massembly-201/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/massembly-201/src/main/assembly/bin.xml b/src/it/projects/dependency-sets/massembly-201/src/main/assembly/bin.xml
index 2380cb6..1e597d4 100644
--- a/src/it/projects/dependency-sets/massembly-201/src/main/assembly/bin.xml
+++ b/src/it/projects/dependency-sets/massembly-201/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/massembly-201/src/main/java/test/App.java b/src/it/projects/dependency-sets/massembly-201/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/massembly-201/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/massembly-201/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/massembly-201/verify.bsh b/src/it/projects/dependency-sets/massembly-201/verify.bsh
index 9afdb06..a8f6392 100644
--- a/src/it/projects/dependency-sets/massembly-201/verify.bsh
+++ b/src/it/projects/dependency-sets/massembly-201/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File main = new File( basedir, "target/massembly-201-1-bin/maven-model-2.0.9.jar" );
@@ -19,4 +38,4 @@
     System.out.println( "JavaDocs dependency jar is missing: " + javadocs );
 }
 
-return main.exists() && sources.exists() && javadocs.exists();
\ No newline at end of file
+return main.exists() && sources.exists() && javadocs.exists();
diff --git a/src/it/projects/dependency-sets/massembly-232/assembly.xml b/src/it/projects/dependency-sets/massembly-232/assembly.xml
index 9e32280..9fb01d8 100644
--- a/src/it/projects/dependency-sets/massembly-232/assembly.xml
+++ b/src/it/projects/dependency-sets/massembly-232/assembly.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/massembly-232/pom.xml b/src/it/projects/dependency-sets/massembly-232/pom.xml
index 2a58919..f4d9beb 100644
--- a/src/it/projects/dependency-sets/massembly-232/pom.xml
+++ b/src/it/projects/dependency-sets/massembly-232/pom.xml
@@ -1,4 +1,24 @@
 <?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>
   <modelVersion>4.0.0</modelVersion>
   
diff --git a/src/it/projects/dependency-sets/massembly-232/verify.bsh b/src/it/projects/dependency-sets/massembly-232/verify.bsh
index 41db747..ef3128b 100644
--- a/src/it/projects/dependency-sets/massembly-232/verify.bsh
+++ b/src/it/projects/dependency-sets/massembly-232/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File file = new File( basedir, "target/massembly-232-1-dist/massembly-232-1/etc/hello.txt" );
diff --git a/src/it/projects/dependency-sets/massembly-235/pom.xml b/src/it/projects/dependency-sets/massembly-235/pom.xml
index b7f6aa1..75966b7 100644
--- a/src/it/projects/dependency-sets/massembly-235/pom.xml
+++ b/src/it/projects/dependency-sets/massembly-235/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
@@ -59,4 +79,4 @@
       </plugin>
     </plugins>
   </build>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/dependency-sets/massembly-235/src/main/assembly/release.xml b/src/it/projects/dependency-sets/massembly-235/src/main/assembly/release.xml
index 4ddd068..99851f1 100644
--- a/src/it/projects/dependency-sets/massembly-235/src/main/assembly/release.xml
+++ b/src/it/projects/dependency-sets/massembly-235/src/main/assembly/release.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/massembly-235/src/main/java/HelloWorld.java b/src/it/projects/dependency-sets/massembly-235/src/main/java/HelloWorld.java
index 3e26c70..5e8b990 100644
--- a/src/it/projects/dependency-sets/massembly-235/src/main/java/HelloWorld.java
+++ b/src/it/projects/dependency-sets/massembly-235/src/main/java/HelloWorld.java
@@ -1,7 +1,26 @@
+/*
+ * 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.
+ */
+
 public class HelloWorld
 {
     public static String sayHello(String name)
     {
         return "Hello " + name + "!";
     }
-}
\ No newline at end of file
+}
diff --git a/src/it/projects/dependency-sets/massembly-235/src/test/java/HelloWorldTest.java b/src/it/projects/dependency-sets/massembly-235/src/test/java/HelloWorldTest.java
index 71ee93e..efb679e 100644
--- a/src/it/projects/dependency-sets/massembly-235/src/test/java/HelloWorldTest.java
+++ b/src/it/projects/dependency-sets/massembly-235/src/test/java/HelloWorldTest.java
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import junit.framework.TestCase;
 
 public class HelloWorldTest extends TestCase
@@ -6,4 +25,4 @@
     {
         assertEquals("Hello World!", HelloWorld.sayHello("World"));
     }
-}
\ No newline at end of file
+}
diff --git a/src/it/projects/dependency-sets/massembly-235/verify.bsh b/src/it/projects/dependency-sets/massembly-235/verify.bsh
index 076ed43..4526652 100644
--- a/src/it/projects/dependency-sets/massembly-235/verify.bsh
+++ b/src/it/projects/dependency-sets/massembly-235/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File dir = new File( basedir, "target/massembly235-test-1-release" );
diff --git a/src/it/projects/dependency-sets/massembly-345/pom.xml b/src/it/projects/dependency-sets/massembly-345/pom.xml
index 3281c80..292c9f2 100644
--- a/src/it/projects/dependency-sets/massembly-345/pom.xml
+++ b/src/it/projects/dependency-sets/massembly-345/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/dependency-sets/massembly-345/src/assemble/bin.xml b/src/it/projects/dependency-sets/massembly-345/src/assemble/bin.xml
index 7890be1..9a829a0 100644
--- a/src/it/projects/dependency-sets/massembly-345/src/assemble/bin.xml
+++ b/src/it/projects/dependency-sets/massembly-345/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/massembly-345/src/main/resources/application.xml b/src/it/projects/dependency-sets/massembly-345/src/main/resources/application.xml
index 8318c86..e457be4 100644
--- a/src/it/projects/dependency-sets/massembly-345/src/main/resources/application.xml
+++ b/src/it/projects/dependency-sets/massembly-345/src/main/resources/application.xml
@@ -1 +1,21 @@
-Test
\ No newline at end of file
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
+Test
diff --git a/src/it/projects/dependency-sets/massembly-345/verify.bsh b/src/it/projects/dependency-sets/massembly-345/verify.bsh
index fb99796..4a820d3 100644
--- a/src/it/projects/dependency-sets/massembly-345/verify.bsh
+++ b/src/it/projects/dependency-sets/massembly-345/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 // verify that the ear is created
diff --git a/src/it/projects/dependency-sets/massembly-99/module-a/pom.xml b/src/it/projects/dependency-sets/massembly-99/module-a/pom.xml
index d4d5aca..ec4bc1e 100644
--- a/src/it/projects/dependency-sets/massembly-99/module-a/pom.xml
+++ b/src/it/projects/dependency-sets/massembly-99/module-a/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <groupId>test</groupId>
     <artifactId>massembly-99</artifactId>
diff --git a/src/it/projects/dependency-sets/massembly-99/module-a/src/main/java/com/nf/ass/App.java b/src/it/projects/dependency-sets/massembly-99/module-a/src/main/java/com/nf/ass/App.java
index cf1a50f..5e58c53 100644
--- a/src/it/projects/dependency-sets/massembly-99/module-a/src/main/java/com/nf/ass/App.java
+++ b/src/it/projects/dependency-sets/massembly-99/module-a/src/main/java/com/nf/ass/App.java
@@ -1,5 +1,25 @@
 package com.nf.ass;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/massembly-99/module-a/src/test/java/com/nf/ass/AppTest.java b/src/it/projects/dependency-sets/massembly-99/module-a/src/test/java/com/nf/ass/AppTest.java
index 8793d6d..2112666 100644
--- a/src/it/projects/dependency-sets/massembly-99/module-a/src/test/java/com/nf/ass/AppTest.java
+++ b/src/it/projects/dependency-sets/massembly-99/module-a/src/test/java/com/nf/ass/AppTest.java
@@ -1,5 +1,25 @@
 package com.nf.ass;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/massembly-99/module-b/pom.xml b/src/it/projects/dependency-sets/massembly-99/module-b/pom.xml
index 6cb13f6..0d9b494 100644
--- a/src/it/projects/dependency-sets/massembly-99/module-b/pom.xml
+++ b/src/it/projects/dependency-sets/massembly-99/module-b/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <groupId>test</groupId>
     <artifactId>massembly-99</artifactId>
diff --git a/src/it/projects/dependency-sets/massembly-99/module-b/src/main/java/com/nf/ass/App.java b/src/it/projects/dependency-sets/massembly-99/module-b/src/main/java/com/nf/ass/App.java
index cf1a50f..5e58c53 100644
--- a/src/it/projects/dependency-sets/massembly-99/module-b/src/main/java/com/nf/ass/App.java
+++ b/src/it/projects/dependency-sets/massembly-99/module-b/src/main/java/com/nf/ass/App.java
@@ -1,5 +1,25 @@
 package com.nf.ass;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/massembly-99/module-b/src/test/java/com/nf/ass/AppTest.java b/src/it/projects/dependency-sets/massembly-99/module-b/src/test/java/com/nf/ass/AppTest.java
index 8793d6d..2112666 100644
--- a/src/it/projects/dependency-sets/massembly-99/module-b/src/test/java/com/nf/ass/AppTest.java
+++ b/src/it/projects/dependency-sets/massembly-99/module-b/src/test/java/com/nf/ass/AppTest.java
@@ -1,5 +1,25 @@
 package com.nf.ass;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/massembly-99/pom.xml b/src/it/projects/dependency-sets/massembly-99/pom.xml
index 13cdea8..315326d 100644
--- a/src/it/projects/dependency-sets/massembly-99/pom.xml
+++ b/src/it/projects/dependency-sets/massembly-99/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/massembly-99/src/main/assemblies/bin.xml b/src/it/projects/dependency-sets/massembly-99/src/main/assemblies/bin.xml
index 216f466..76d09d6 100644
--- a/src/it/projects/dependency-sets/massembly-99/src/main/assemblies/bin.xml
+++ b/src/it/projects/dependency-sets/massembly-99/src/main/assemblies/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/massembly-99/verify.bsh b/src/it/projects/dependency-sets/massembly-99/verify.bsh
index 7d0570e..0a6c04a 100644
--- a/src/it/projects/dependency-sets/massembly-99/verify.bsh
+++ b/src/it/projects/dependency-sets/massembly-99/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/pom.xml b/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/pom.xml
index 7351d99..f88d9ff 100644
--- a/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/pom.xml
+++ b/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/src/main/assembly/bin.xml b/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/src/main/assembly/bin.xml
index 78b462f..7df67d3 100644
--- a/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/src/main/assembly/bin.xml
+++ b/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -16,4 +36,4 @@
       </includes>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/src/main/java/test/App.java b/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/verify.bsh b/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/verify.bsh
index 03ab880..e7cd3b3 100644
--- a/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/verify.bsh
+++ b/src/it/projects/dependency-sets/mid-artifactId-wildcard-massembly570/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File dir = new File( basedir, "target/mid-artifactId-wildcard-massembly570-1-bin/maven-libs" );
diff --git a/src/it/projects/dependency-sets/multiple-wildcard-includes/pom.xml b/src/it/projects/dependency-sets/multiple-wildcard-includes/pom.xml
index e6889b9..7ff27ba 100644
--- a/src/it/projects/dependency-sets/multiple-wildcard-includes/pom.xml
+++ b/src/it/projects/dependency-sets/multiple-wildcard-includes/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/dependency-sets/multiple-wildcard-includes/src/main/assembly/bin.xml b/src/it/projects/dependency-sets/multiple-wildcard-includes/src/main/assembly/bin.xml
index 60a8ec5..d9186c8 100644
--- a/src/it/projects/dependency-sets/multiple-wildcard-includes/src/main/assembly/bin.xml
+++ b/src/it/projects/dependency-sets/multiple-wildcard-includes/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -17,4 +37,4 @@
       </includes>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/dependency-sets/multiple-wildcard-includes/src/main/java/test/App.java b/src/it/projects/dependency-sets/multiple-wildcard-includes/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/dependency-sets/multiple-wildcard-includes/src/main/java/test/App.java
+++ b/src/it/projects/dependency-sets/multiple-wildcard-includes/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/multiple-wildcard-includes/src/test/java/test/AppTest.java b/src/it/projects/dependency-sets/multiple-wildcard-includes/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/dependency-sets/multiple-wildcard-includes/src/test/java/test/AppTest.java
+++ b/src/it/projects/dependency-sets/multiple-wildcard-includes/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/multiple-wildcard-includes/verify.bsh b/src/it/projects/dependency-sets/multiple-wildcard-includes/verify.bsh
index 63af16b..3c310d7 100644
--- a/src/it/projects/dependency-sets/multiple-wildcard-includes/verify.bsh
+++ b/src/it/projects/dependency-sets/multiple-wildcard-includes/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File wagonProviderJar = new File( basedir, "target/massembly-241-1-bin/maven-libs/wagon-provider-api-1.0-beta-4.jar" );
diff --git a/src/it/projects/dependency-sets/outputFileNameMappingWithUnpack/pom.xml b/src/it/projects/dependency-sets/outputFileNameMappingWithUnpack/pom.xml
index b4357a9..d66f297 100644
--- a/src/it/projects/dependency-sets/outputFileNameMappingWithUnpack/pom.xml
+++ b/src/it/projects/dependency-sets/outputFileNameMappingWithUnpack/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/dependency-sets/outputFileNameMappingWithUnpack/src/main/assembly/bin.xml b/src/it/projects/dependency-sets/outputFileNameMappingWithUnpack/src/main/assembly/bin.xml
index 5c51b8e..d57c36f 100644
--- a/src/it/projects/dependency-sets/outputFileNameMappingWithUnpack/src/main/assembly/bin.xml
+++ b/src/it/projects/dependency-sets/outputFileNameMappingWithUnpack/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/outputFileNameMappingWithUnpack/verify.bsh b/src/it/projects/dependency-sets/outputFileNameMappingWithUnpack/verify.bsh
index 45f7834..0424f51 100644
--- a/src/it/projects/dependency-sets/outputFileNameMappingWithUnpack/verify.bsh
+++ b/src/it/projects/dependency-sets/outputFileNameMappingWithUnpack/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 // verify that the ear is created
diff --git a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-a/pom.xml b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-a/pom.xml
index 3cf7d8d..0ea29fa 100644
--- a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-a/pom.xml
+++ b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-a/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <groupId>test</groupId>
     <artifactId>using-moduleSet-implied-depSet</artifactId>
diff --git a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-a/src/main/java/com/nf/ass/App.java b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-a/src/main/java/com/nf/ass/App.java
index cf1a50f..5e58c53 100644
--- a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-a/src/main/java/com/nf/ass/App.java
+++ b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-a/src/main/java/com/nf/ass/App.java
@@ -1,5 +1,25 @@
 package com.nf.ass;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-a/src/test/java/com/nf/ass/AppTest.java b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-a/src/test/java/com/nf/ass/AppTest.java
index 8793d6d..2112666 100644
--- a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-a/src/test/java/com/nf/ass/AppTest.java
+++ b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-a/src/test/java/com/nf/ass/AppTest.java
@@ -1,5 +1,25 @@
 package com.nf.ass;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-b/pom.xml b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-b/pom.xml
index adf74c2..c4357c3 100644
--- a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-b/pom.xml
+++ b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-b/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <groupId>test</groupId>
     <artifactId>using-moduleSet-implied-depSet</artifactId>
diff --git a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-b/src/main/java/com/nf/ass/App.java b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-b/src/main/java/com/nf/ass/App.java
index cf1a50f..5e58c53 100644
--- a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-b/src/main/java/com/nf/ass/App.java
+++ b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-b/src/main/java/com/nf/ass/App.java
@@ -1,5 +1,25 @@
 package com.nf.ass;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-b/src/test/java/com/nf/ass/AppTest.java b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-b/src/test/java/com/nf/ass/AppTest.java
index 8793d6d..2112666 100644
--- a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-b/src/test/java/com/nf/ass/AppTest.java
+++ b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/module-b/src/test/java/com/nf/ass/AppTest.java
@@ -1,5 +1,25 @@
 package com.nf.ass;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/pom.xml b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/pom.xml
index 4bc306e..fc49e84 100644
--- a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/pom.xml
+++ b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/src/main/assemblies/bin.xml b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/src/main/assemblies/bin.xml
index 3a294ea..539782c 100644
--- a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/src/main/assemblies/bin.xml
+++ b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/src/main/assemblies/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/verify.bsh b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/verify.bsh
index 9505731..70ef7fc 100644
--- a/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/verify.bsh
+++ b/src/it/projects/dependency-sets/using-moduleSet-implied-depSet/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/descriptor-refs/bin/jars-in-archive-root/pom.xml b/src/it/projects/descriptor-refs/bin/jars-in-archive-root/pom.xml
index a489786..e2971b5 100644
--- a/src/it/projects/descriptor-refs/bin/jars-in-archive-root/pom.xml
+++ b/src/it/projects/descriptor-refs/bin/jars-in-archive-root/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd' xmlns='http://maven.apache.org/POM/4.0.0'>
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -35,6 +55,7 @@
               <descriptorRefs>
                 <descriptorRef>bin</descriptorRef>
               </descriptorRefs>
+              <tarLongFileMode>posix</tarLongFileMode>
             </configuration>
           </execution>
         </executions>
diff --git a/src/it/projects/descriptor-refs/bin/jars-in-archive-root/src/main/java/test/App.java b/src/it/projects/descriptor-refs/bin/jars-in-archive-root/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/descriptor-refs/bin/jars-in-archive-root/src/main/java/test/App.java
+++ b/src/it/projects/descriptor-refs/bin/jars-in-archive-root/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/descriptor-refs/bin/jars-in-archive-root/src/test/java/test/AppTest.java b/src/it/projects/descriptor-refs/bin/jars-in-archive-root/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/descriptor-refs/bin/jars-in-archive-root/src/test/java/test/AppTest.java
+++ b/src/it/projects/descriptor-refs/bin/jars-in-archive-root/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/descriptor-refs/bin/jars-in-archive-root/verify.bsh b/src/it/projects/descriptor-refs/bin/jars-in-archive-root/verify.bsh
index 51462e4..04c3438 100644
--- a/src/it/projects/descriptor-refs/bin/jars-in-archive-root/verify.bsh
+++ b/src/it/projects/descriptor-refs/bin/jars-in-archive-root/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.zip.*;
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/pom.xml b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/pom.xml
index 5feacf9..928b51d 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/pom.xml
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>component-descriptors-merged</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/java/test/AppChild1.java b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/java/test/AppChild1.java
index 1a9c967..2b0959b 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/java/test/AppChild1.java
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/java/test/AppChild1.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/resources/META-INF/plexus/components.xml b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/resources/META-INF/plexus/components.xml
index 090c47c..0f56d44 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/resources/META-INF/plexus/components.xml
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/resources/META-INF/plexus/components.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <component-set>
   <components>
     <component>
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/pom.xml b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/pom.xml
index 6cda901..cd74182 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/pom.xml
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <parent>
     <artifactId>component-descriptors-merged</artifactId>
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/assemble/bin.xml b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/assemble/bin.xml
index 256a72a..aeae9a6 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/assemble/bin.xml
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -19,4 +39,4 @@
       </excludes>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/java/test/App.java b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/java/test/App.java
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/resources/META-INF/plexus/components.xml b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/resources/META-INF/plexus/components.xml
index cd02cc7..6e540c5 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/resources/META-INF/plexus/components.xml
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/resources/META-INF/plexus/components.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <component-set>
   <components>
     <component>
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/test/java/test/AppTest.java b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/test/java/test/AppTest.java
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/pom.xml b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/pom.xml
index 6949d6c..d79f907 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/pom.xml
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/verify.bsh b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/verify.bsh
index a1a0820..b6a03dd 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/verify.bsh
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/component-descriptors-merged/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child1/pom.xml b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child1/pom.xml
index d743ca4..0f0ce1f 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child1/pom.xml
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>jar-with-dependencies-unpacked-to-root-dir</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child1/src/main/java/test/AppChild1.java b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child1/src/main/java/test/AppChild1.java
index 1a9c967..2b0959b 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child1/src/main/java/test/AppChild1.java
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child1/src/main/java/test/AppChild1.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/pom.xml b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/pom.xml
index 61f948a..2702005 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/pom.xml
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <parent>
     <artifactId>jar-with-dependencies-unpacked-to-root-dir</artifactId>
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/src/assemble/bin.xml b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/src/assemble/bin.xml
index 256a72a..aeae9a6 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/src/assemble/bin.xml
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -19,4 +39,4 @@
       </excludes>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/src/main/java/test/App.java b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/src/main/java/test/App.java
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/src/test/java/test/AppTest.java b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/src/test/java/test/AppTest.java
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/child2/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/pom.xml b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/pom.xml
index 557d6fa..007c57b 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/pom.xml
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/verify.bsh b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/verify.bsh
index e1adca4..2369dc9 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/verify.bsh
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/deps-unpacked-to-root-dir/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/pom.xml b/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/pom.xml
index b8b9e3d..8d47842 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/pom.xml
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/src/assemble/bin.xml b/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/src/assemble/bin.xml
index 6c5e814..8112647 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/src/assemble/bin.xml
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly>
   <id>bin</id>
   <formats>
@@ -17,4 +37,4 @@
       </excludes>
     </dependencySet>
   </dependencySets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/src/main/java/test/App.java b/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/src/main/java/test/App.java
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/verify.bsh b/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/verify.bsh
index e4bc017..99da4a3 100644
--- a/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/verify.bsh
+++ b/src/it/projects/descriptor-refs/jar-with-dependencies/no-target-dir/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child1/pom.xml b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child1/pom.xml
index 74864c1..29dbe25 100644
--- a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child1/pom.xml
+++ b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>multimodule-sources-copied</artifactId>
     <groupId>test</groupId>
@@ -17,4 +37,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child1/src/main/java/test/App.java b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child1/src/main/java/test/App.java
+++ b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child1/src/test/java/test/AppTest.java b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child2/pom.xml b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child2/pom.xml
index e6aeef8..dd45797 100644
--- a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child2/pom.xml
+++ b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>multimodule-sources-copied</artifactId>
     <groupId>test</groupId>
@@ -17,4 +37,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child2/src/main/java/test/App.java b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child2/src/main/java/test/App.java
+++ b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child2/src/test/java/test/AppTest.java b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child2/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child2/src/test/java/test/AppTest.java
+++ b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/child2/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/pom.xml b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/pom.xml
index 0ca1eed..d50b186 100644
--- a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/pom.xml
+++ b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/pom.xml
@@ -1,4 +1,24 @@
 <?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:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd' xmlns='http://maven.apache.org/POM/4.0.0'>
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -40,6 +60,7 @@
               <descriptorRefs>
                 <descriptorRef>project</descriptorRef>
               </descriptorRefs>
+              <tarLongFileMode>posix</tarLongFileMode>
             </configuration>
           </execution>
         </executions>
diff --git a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/verify.bsh b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/verify.bsh
index cba2739..f32b690 100644
--- a/src/it/projects/descriptor-refs/project/multimodule-sources-copied/verify.bsh
+++ b/src/it/projects/descriptor-refs/project/multimodule-sources-copied/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.zip.*;
diff --git a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child1/pom.xml b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child1/pom.xml
index dc3b1dc..ecc205d 100644
--- a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child1/pom.xml
+++ b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>multimodule-sources-copied</artifactId>
     <groupId>test</groupId>
@@ -16,4 +36,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child1/src/main/java/test/App.java b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child1/src/main/java/test/App.java
+++ b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child1/src/test/java/test/AppTest.java b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child2/pom.xml b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child2/pom.xml
index c8c256d..c90b727 100644
--- a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child2/pom.xml
+++ b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>multimodule-sources-copied</artifactId>
     <groupId>test</groupId>
@@ -16,4 +36,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child2/src/main/java/test/App.java b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child2/src/main/java/test/App.java
+++ b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child2/src/test/java/test/AppTest.java b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child2/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child2/src/test/java/test/AppTest.java
+++ b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/child2/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/pom.xml b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/pom.xml
index 3e55494..54d7345 100644
--- a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/pom.xml
+++ b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/pom.xml
@@ -1,4 +1,24 @@
 <?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:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd' xmlns='http://maven.apache.org/POM/4.0.0'>
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -41,6 +61,7 @@
               <descriptorRefs>
                 <descriptorRef>project</descriptorRef>
               </descriptorRefs>
+              <tarLongFileMode>posix</tarLongFileMode>
             </configuration>
           </execution>
         </executions>
diff --git a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/verify.bsh b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/verify.bsh
index 91552e6..b4d76f7 100644
--- a/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/verify.bsh
+++ b/src/it/projects/descriptor-refs/project/no-target-dir-multimodule/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.zip.*;
diff --git a/src/it/projects/descriptor-refs/project/no-target-dir/pom.xml b/src/it/projects/descriptor-refs/project/no-target-dir/pom.xml
index 4067a13..99649a1 100644
--- a/src/it/projects/descriptor-refs/project/no-target-dir/pom.xml
+++ b/src/it/projects/descriptor-refs/project/no-target-dir/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd' xmlns='http://maven.apache.org/POM/4.0.0'>
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -34,6 +54,7 @@
               <descriptorRefs>
                 <descriptorRef>project</descriptorRef>
               </descriptorRefs>
+              <tarLongFileMode>posix</tarLongFileMode>
             </configuration>
           </execution>
         </executions>
diff --git a/src/it/projects/descriptor-refs/project/no-target-dir/src/main/java/test/App.java b/src/it/projects/descriptor-refs/project/no-target-dir/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/descriptor-refs/project/no-target-dir/src/main/java/test/App.java
+++ b/src/it/projects/descriptor-refs/project/no-target-dir/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/descriptor-refs/project/no-target-dir/src/test/java/test/AppTest.java b/src/it/projects/descriptor-refs/project/no-target-dir/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/descriptor-refs/project/no-target-dir/src/test/java/test/AppTest.java
+++ b/src/it/projects/descriptor-refs/project/no-target-dir/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/descriptor-refs/project/no-target-dir/verify.bsh b/src/it/projects/descriptor-refs/project/no-target-dir/verify.bsh
index b90b6d6..4a5d537 100644
--- a/src/it/projects/descriptor-refs/project/no-target-dir/verify.bsh
+++ b/src/it/projects/descriptor-refs/project/no-target-dir/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.zip.*;
diff --git a/src/it/projects/descriptor-refs/project/sources-copied/pom.xml b/src/it/projects/descriptor-refs/project/sources-copied/pom.xml
index feaa8be..b4645d1 100644
--- a/src/it/projects/descriptor-refs/project/sources-copied/pom.xml
+++ b/src/it/projects/descriptor-refs/project/sources-copied/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd' xmlns='http://maven.apache.org/POM/4.0.0'>
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -35,6 +55,7 @@
               <descriptorRefs>
                 <descriptorRef>project</descriptorRef>
               </descriptorRefs>
+              <tarLongFileMode>posix</tarLongFileMode>
             </configuration>
           </execution>
         </executions>
diff --git a/src/it/projects/descriptor-refs/project/sources-copied/src/main/java/test/App.java b/src/it/projects/descriptor-refs/project/sources-copied/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/descriptor-refs/project/sources-copied/src/main/java/test/App.java
+++ b/src/it/projects/descriptor-refs/project/sources-copied/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/descriptor-refs/project/sources-copied/src/test/java/test/AppTest.java b/src/it/projects/descriptor-refs/project/sources-copied/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/descriptor-refs/project/sources-copied/src/test/java/test/AppTest.java
+++ b/src/it/projects/descriptor-refs/project/sources-copied/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/descriptor-refs/project/sources-copied/verify.bsh b/src/it/projects/descriptor-refs/project/sources-copied/verify.bsh
index 02dbded..a2ad7a6 100644
--- a/src/it/projects/descriptor-refs/project/sources-copied/verify.bsh
+++ b/src/it/projects/descriptor-refs/project/sources-copied/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.zip.*;
diff --git a/src/it/projects/descriptor-refs/src/no-target-dir/pom.xml b/src/it/projects/descriptor-refs/src/no-target-dir/pom.xml
index bb36e08..49aa72d 100644
--- a/src/it/projects/descriptor-refs/src/no-target-dir/pom.xml
+++ b/src/it/projects/descriptor-refs/src/no-target-dir/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd' xmlns='http://maven.apache.org/POM/4.0.0'>
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -34,6 +54,7 @@
               <descriptorRefs>
                 <descriptorRef>src</descriptorRef>
               </descriptorRefs>
+              <tarLongFileMode>posix</tarLongFileMode>
             </configuration>
           </execution>
         </executions>
diff --git a/src/it/projects/descriptor-refs/src/no-target-dir/src/main/java/test/App.java b/src/it/projects/descriptor-refs/src/no-target-dir/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/descriptor-refs/src/no-target-dir/src/main/java/test/App.java
+++ b/src/it/projects/descriptor-refs/src/no-target-dir/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/descriptor-refs/src/no-target-dir/src/test/java/test/AppTest.java b/src/it/projects/descriptor-refs/src/no-target-dir/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/descriptor-refs/src/no-target-dir/src/test/java/test/AppTest.java
+++ b/src/it/projects/descriptor-refs/src/no-target-dir/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/descriptor-refs/src/no-target-dir/verify.bsh b/src/it/projects/descriptor-refs/src/no-target-dir/verify.bsh
index 7fa8ea0..fa08ffe 100644
--- a/src/it/projects/descriptor-refs/src/no-target-dir/verify.bsh
+++ b/src/it/projects/descriptor-refs/src/no-target-dir/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.zip.*;
diff --git a/src/it/projects/descriptor-refs/src/src-dir-copied/pom.xml b/src/it/projects/descriptor-refs/src/src-dir-copied/pom.xml
index 933e6e6..299b368 100644
--- a/src/it/projects/descriptor-refs/src/src-dir-copied/pom.xml
+++ b/src/it/projects/descriptor-refs/src/src-dir-copied/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd' xmlns='http://maven.apache.org/POM/4.0.0'>
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -35,6 +55,7 @@
               <descriptorRefs>
                 <descriptorRef>src</descriptorRef>
               </descriptorRefs>
+              <tarLongFileMode>posix</tarLongFileMode>
             </configuration>
           </execution>
         </executions>
diff --git a/src/it/projects/descriptor-refs/src/src-dir-copied/src/main/java/test/App.java b/src/it/projects/descriptor-refs/src/src-dir-copied/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/descriptor-refs/src/src-dir-copied/src/main/java/test/App.java
+++ b/src/it/projects/descriptor-refs/src/src-dir-copied/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/descriptor-refs/src/src-dir-copied/src/test/java/test/AppTest.java b/src/it/projects/descriptor-refs/src/src-dir-copied/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/descriptor-refs/src/src-dir-copied/src/test/java/test/AppTest.java
+++ b/src/it/projects/descriptor-refs/src/src-dir-copied/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/descriptor-refs/src/src-dir-copied/verify.bsh b/src/it/projects/descriptor-refs/src/src-dir-copied/verify.bsh
index 6cc7bb1..f148edb 100644
--- a/src/it/projects/descriptor-refs/src/src-dir-copied/verify.bsh
+++ b/src/it/projects/descriptor-refs/src/src-dir-copied/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.zip.*;
diff --git a/src/it/projects/file-modes/file-set-fileMode/pom.xml b/src/it/projects/file-modes/file-set-fileMode/pom.xml
index 84a2b88..3c10c60 100644
--- a/src/it/projects/file-modes/file-set-fileMode/pom.xml
+++ b/src/it/projects/file-modes/file-set-fileMode/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/file-modes/file-set-fileMode/src/assemble/src.xml b/src/it/projects/file-modes/file-set-fileMode/src/assemble/src.xml
index e8e6d09..93a2b3e 100644
--- a/src/it/projects/file-modes/file-set-fileMode/src/assemble/src.xml
+++ b/src/it/projects/file-modes/file-set-fileMode/src/assemble/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-modes/file-set-fileMode/src/main/java/test/App.java b/src/it/projects/file-modes/file-set-fileMode/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/file-modes/file-set-fileMode/src/main/java/test/App.java
+++ b/src/it/projects/file-modes/file-set-fileMode/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/file-modes/file-set-fileMode/src/test/java/test/AppTest.java b/src/it/projects/file-modes/file-set-fileMode/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/file-modes/file-set-fileMode/src/test/java/test/AppTest.java
+++ b/src/it/projects/file-modes/file-set-fileMode/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/file-modes/file-set-fileMode/verify.bsh b/src/it/projects/file-modes/file-set-fileMode/verify.bsh
index 22a77da..7811e1d 100644
--- a/src/it/projects/file-modes/file-set-fileMode/verify.bsh
+++ b/src/it/projects/file-modes/file-set-fileMode/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/file-modes/fileItem-fileMode/pom.xml b/src/it/projects/file-modes/fileItem-fileMode/pom.xml
index 32bc563..cb76370 100644
--- a/src/it/projects/file-modes/fileItem-fileMode/pom.xml
+++ b/src/it/projects/file-modes/fileItem-fileMode/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/file-modes/fileItem-fileMode/src/assemble/src.xml b/src/it/projects/file-modes/fileItem-fileMode/src/assemble/src.xml
index 60946b5..7a9411b 100644
--- a/src/it/projects/file-modes/fileItem-fileMode/src/assemble/src.xml
+++ b/src/it/projects/file-modes/fileItem-fileMode/src/assemble/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-modes/fileItem-fileMode/src/main/java/test/App.java b/src/it/projects/file-modes/fileItem-fileMode/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/file-modes/fileItem-fileMode/src/main/java/test/App.java
+++ b/src/it/projects/file-modes/fileItem-fileMode/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/file-modes/fileItem-fileMode/src/test/java/test/AppTest.java b/src/it/projects/file-modes/fileItem-fileMode/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/file-modes/fileItem-fileMode/src/test/java/test/AppTest.java
+++ b/src/it/projects/file-modes/fileItem-fileMode/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/file-modes/fileItem-fileMode/verify.bsh b/src/it/projects/file-modes/fileItem-fileMode/verify.bsh
index 9c8fe7f..4486658 100644
--- a/src/it/projects/file-modes/fileItem-fileMode/verify.bsh
+++ b/src/it/projects/file-modes/fileItem-fileMode/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.util.*;
 
diff --git a/src/it/projects/file-sets/default-directory-unspecified/pom.xml b/src/it/projects/file-sets/default-directory-unspecified/pom.xml
index 8e34afb..336586f 100644
--- a/src/it/projects/file-sets/default-directory-unspecified/pom.xml
+++ b/src/it/projects/file-sets/default-directory-unspecified/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/file-sets/default-directory-unspecified/src/main/assembly/src.xml b/src/it/projects/file-sets/default-directory-unspecified/src/main/assembly/src.xml
index 8fddd98..5b255fb 100644
--- a/src/it/projects/file-sets/default-directory-unspecified/src/main/assembly/src.xml
+++ b/src/it/projects/file-sets/default-directory-unspecified/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-sets/default-directory-unspecified/verify.bsh b/src/it/projects/file-sets/default-directory-unspecified/verify.bsh
index 35fe3b1..6264823 100644
--- a/src/it/projects/file-sets/default-directory-unspecified/verify.bsh
+++ b/src/it/projects/file-sets/default-directory-unspecified/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/file-sets/default-excludes-unspecified/pom.xml b/src/it/projects/file-sets/default-excludes-unspecified/pom.xml
index 2ec8b4c..1ee2aa0 100644
--- a/src/it/projects/file-sets/default-excludes-unspecified/pom.xml
+++ b/src/it/projects/file-sets/default-excludes-unspecified/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/file-sets/default-excludes-unspecified/src/main/assembly/src.xml b/src/it/projects/file-sets/default-excludes-unspecified/src/main/assembly/src.xml
index f9570a5..6c34124 100644
--- a/src/it/projects/file-sets/default-excludes-unspecified/src/main/assembly/src.xml
+++ b/src/it/projects/file-sets/default-excludes-unspecified/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-sets/default-excludes-unspecified/src/main/java/test/App.java b/src/it/projects/file-sets/default-excludes-unspecified/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/file-sets/default-excludes-unspecified/src/main/java/test/App.java
+++ b/src/it/projects/file-sets/default-excludes-unspecified/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/file-sets/default-excludes-unspecified/src/test/java/test/AppTest.java b/src/it/projects/file-sets/default-excludes-unspecified/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/file-sets/default-excludes-unspecified/src/test/java/test/AppTest.java
+++ b/src/it/projects/file-sets/default-excludes-unspecified/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/file-sets/default-excludes-unspecified/verify.bsh b/src/it/projects/file-sets/default-excludes-unspecified/verify.bsh
index d5b6b6d..e47426d 100644
--- a/src/it/projects/file-sets/default-excludes-unspecified/verify.bsh
+++ b/src/it/projects/file-sets/default-excludes-unspecified/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/file-sets/dont-use-default-excludes/pom.xml b/src/it/projects/file-sets/dont-use-default-excludes/pom.xml
index 8e7b414..33b295f 100644
--- a/src/it/projects/file-sets/dont-use-default-excludes/pom.xml
+++ b/src/it/projects/file-sets/dont-use-default-excludes/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/file-sets/dont-use-default-excludes/setup.bsh b/src/it/projects/file-sets/dont-use-default-excludes/setup.bsh
index a747228..ab3bd05 100644
--- a/src/it/projects/file-sets/dont-use-default-excludes/setup.bsh
+++ b/src/it/projects/file-sets/dont-use-default-excludes/setup.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File srcSvnDir = new File( basedir, "src/main/assembly/.svn" );
@@ -10,4 +29,4 @@
 writer.flush();
 writer.close();
 
-return true;
\ No newline at end of file
+return true;
diff --git a/src/it/projects/file-sets/dont-use-default-excludes/src/main/assembly/src.xml b/src/it/projects/file-sets/dont-use-default-excludes/src/main/assembly/src.xml
index b2dd7a3..d3d6184 100644
--- a/src/it/projects/file-sets/dont-use-default-excludes/src/main/assembly/src.xml
+++ b/src/it/projects/file-sets/dont-use-default-excludes/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-sets/dont-use-default-excludes/src/main/java/test/App.java b/src/it/projects/file-sets/dont-use-default-excludes/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/file-sets/dont-use-default-excludes/src/main/java/test/App.java
+++ b/src/it/projects/file-sets/dont-use-default-excludes/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/file-sets/dont-use-default-excludes/src/test/java/test/AppTest.java b/src/it/projects/file-sets/dont-use-default-excludes/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/file-sets/dont-use-default-excludes/src/test/java/test/AppTest.java
+++ b/src/it/projects/file-sets/dont-use-default-excludes/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/file-sets/dont-use-default-excludes/verify.groovy b/src/it/projects/file-sets/dont-use-default-excludes/verify.groovy
index 8d3cad5..a7b841e 100644
--- a/src/it/projects/file-sets/dont-use-default-excludes/verify.groovy
+++ b/src/it/projects/file-sets/dont-use-default-excludes/verify.groovy
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 File assemblyDir = new File( basedir, "target/dont-use-default-excludes-1.0-SNAPSHOT-src/src/main/assembly" );
 
 assert new File( assemblyDir, "src.xml" ).exists();
diff --git a/src/it/projects/file-sets/excludes-using-regex/child/pom.xml b/src/it/projects/file-sets/excludes-using-regex/child/pom.xml
index 6f0d24c..39fe875 100644
--- a/src/it/projects/file-sets/excludes-using-regex/child/pom.xml
+++ b/src/it/projects/file-sets/excludes-using-regex/child/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/file-sets/excludes-using-regex/pom.xml b/src/it/projects/file-sets/excludes-using-regex/pom.xml
index b4dcec2..938b7ba 100644
--- a/src/it/projects/file-sets/excludes-using-regex/pom.xml
+++ b/src/it/projects/file-sets/excludes-using-regex/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/file-sets/excludes-using-regex/src/assemble/src.xml b/src/it/projects/file-sets/excludes-using-regex/src/assemble/src.xml
index 9045fa5..4a004f3 100644
--- a/src/it/projects/file-sets/excludes-using-regex/src/assemble/src.xml
+++ b/src/it/projects/file-sets/excludes-using-regex/src/assemble/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly>
   <id>src</id>
   <formats>
diff --git a/src/it/projects/file-sets/excludes-using-regex/src/main/java/org/test/target/file.properties b/src/it/projects/file-sets/excludes-using-regex/src/main/java/org/test/target/file.properties
index 345e6ae..ac72d00 100644
--- a/src/it/projects/file-sets/excludes-using-regex/src/main/java/org/test/target/file.properties
+++ b/src/it/projects/file-sets/excludes-using-regex/src/main/java/org/test/target/file.properties
@@ -1 +1,18 @@
+# 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.
+
 Test
diff --git a/src/it/projects/file-sets/excludes-using-regex/verify.bsh b/src/it/projects/file-sets/excludes-using-regex/verify.bsh
index 32e7392..c606d16 100644
--- a/src/it/projects/file-sets/excludes-using-regex/verify.bsh
+++ b/src/it/projects/file-sets/excludes-using-regex/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/file-sets/excluding-svn-dirs/pom.xml b/src/it/projects/file-sets/excluding-svn-dirs/pom.xml
index 3c5488e..d0333e1 100644
--- a/src/it/projects/file-sets/excluding-svn-dirs/pom.xml
+++ b/src/it/projects/file-sets/excluding-svn-dirs/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/file-sets/excluding-svn-dirs/setup.bsh b/src/it/projects/file-sets/excluding-svn-dirs/setup.bsh
index a747228..ab3bd05 100644
--- a/src/it/projects/file-sets/excluding-svn-dirs/setup.bsh
+++ b/src/it/projects/file-sets/excluding-svn-dirs/setup.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File srcSvnDir = new File( basedir, "src/main/assembly/.svn" );
@@ -10,4 +29,4 @@
 writer.flush();
 writer.close();
 
-return true;
\ No newline at end of file
+return true;
diff --git a/src/it/projects/file-sets/excluding-svn-dirs/src/main/assembly/src.xml b/src/it/projects/file-sets/excluding-svn-dirs/src/main/assembly/src.xml
index 1acb3a1..d447a9e 100644
--- a/src/it/projects/file-sets/excluding-svn-dirs/src/main/assembly/src.xml
+++ b/src/it/projects/file-sets/excluding-svn-dirs/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-sets/excluding-svn-dirs/src/main/java/test/App.java b/src/it/projects/file-sets/excluding-svn-dirs/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/file-sets/excluding-svn-dirs/src/main/java/test/App.java
+++ b/src/it/projects/file-sets/excluding-svn-dirs/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/file-sets/excluding-svn-dirs/src/test/java/test/AppTest.java b/src/it/projects/file-sets/excluding-svn-dirs/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/file-sets/excluding-svn-dirs/src/test/java/test/AppTest.java
+++ b/src/it/projects/file-sets/excluding-svn-dirs/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/file-sets/excluding-svn-dirs/verify.groovy b/src/it/projects/file-sets/excluding-svn-dirs/verify.groovy
index 975fb36..e480b55 100644
--- a/src/it/projects/file-sets/excluding-svn-dirs/verify.groovy
+++ b/src/it/projects/file-sets/excluding-svn-dirs/verify.groovy
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 assert new File( basedir, "src/main/assembly/.svn" ).exists();
 
 File assemblyDir = new File( basedir, "target/excluding-svn-dirs-1.0-SNAPSHOT-src/src/main/assembly" );
diff --git a/src/it/projects/file-sets/filtered-module-sources/child/pom.xml b/src/it/projects/file-sets/filtered-module-sources/child/pom.xml
index 3e8cf9d..e5bc076 100644
--- a/src/it/projects/file-sets/filtered-module-sources/child/pom.xml
+++ b/src/it/projects/file-sets/filtered-module-sources/child/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/file-sets/filtered-module-sources/pom.xml b/src/it/projects/file-sets/filtered-module-sources/pom.xml
index a482ec3..2a6d9d5 100644
--- a/src/it/projects/file-sets/filtered-module-sources/pom.xml
+++ b/src/it/projects/file-sets/filtered-module-sources/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/file-sets/filtered-module-sources/src/main/assembly/src.xml b/src/it/projects/file-sets/filtered-module-sources/src/main/assembly/src.xml
index b56fbcb..fb4abd0 100644
--- a/src/it/projects/file-sets/filtered-module-sources/src/main/assembly/src.xml
+++ b/src/it/projects/file-sets/filtered-module-sources/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-sets/filtered-module-sources/verify.bsh b/src/it/projects/file-sets/filtered-module-sources/verify.bsh
index b896327..7289891 100644
--- a/src/it/projects/file-sets/filtered-module-sources/verify.bsh
+++ b/src/it/projects/file-sets/filtered-module-sources/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File f = new File( basedir, "target/parent-1-src/child/test.txt" );
@@ -16,4 +35,4 @@
 
 System.out.println( "First line of test.txt: '" + line + "' should equal the project version: '1'." );
 
-return "1".equals( line.trim() );
\ No newline at end of file
+return "1".equals( line.trim() );
diff --git a/src/it/projects/file-sets/filtered-multimodule/child/pom.xml b/src/it/projects/file-sets/filtered-multimodule/child/pom.xml
index c047cb6..ec1dd59 100644
--- a/src/it/projects/file-sets/filtered-multimodule/child/pom.xml
+++ b/src/it/projects/file-sets/filtered-multimodule/child/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/file-sets/filtered-multimodule/child/src/main/assembly/src.xml b/src/it/projects/file-sets/filtered-multimodule/child/src/main/assembly/src.xml
index fca333d..2fbfdbe 100644
--- a/src/it/projects/file-sets/filtered-multimodule/child/src/main/assembly/src.xml
+++ b/src/it/projects/file-sets/filtered-multimodule/child/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-sets/filtered-multimodule/pom.xml b/src/it/projects/file-sets/filtered-multimodule/pom.xml
index b0a847d..f48be7e 100644
--- a/src/it/projects/file-sets/filtered-multimodule/pom.xml
+++ b/src/it/projects/file-sets/filtered-multimodule/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/file-sets/filtered-multimodule/src/main/assembly/bin.xml b/src/it/projects/file-sets/filtered-multimodule/src/main/assembly/bin.xml
index c120fbb..7e9b952 100644
--- a/src/it/projects/file-sets/filtered-multimodule/src/main/assembly/bin.xml
+++ b/src/it/projects/file-sets/filtered-multimodule/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-sets/filtered-multimodule/src/main/java/org/apache/maven/plugin/assembly/test/App.java b/src/it/projects/file-sets/filtered-multimodule/src/main/java/org/apache/maven/plugin/assembly/test/App.java
index 4fa5eb2..3b568c3 100644
--- a/src/it/projects/file-sets/filtered-multimodule/src/main/java/org/apache/maven/plugin/assembly/test/App.java
+++ b/src/it/projects/file-sets/filtered-multimodule/src/main/java/org/apache/maven/plugin/assembly/test/App.java
@@ -1,5 +1,25 @@
 package org.apache.maven.plugin.assembly.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/file-sets/filtered-multimodule/verify.bsh b/src/it/projects/file-sets/filtered-multimodule/verify.bsh
index 65dbbc1..7a100ed 100644
--- a/src/it/projects/file-sets/filtered-multimodule/verify.bsh
+++ b/src/it/projects/file-sets/filtered-multimodule/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File f = new File( basedir, "child/target/child-1-src/test.txt" );
@@ -16,4 +35,4 @@
 
 System.out.println( "First line of test.txt: '" + line + "' should equal the project version: '1'." );
 
-return "1".equals( line.trim() );
\ No newline at end of file
+return "1".equals( line.trim() );
diff --git a/src/it/projects/file-sets/include-base-directory/pom.xml b/src/it/projects/file-sets/include-base-directory/pom.xml
index f7ff0af..fc187bf 100644
--- a/src/it/projects/file-sets/include-base-directory/pom.xml
+++ b/src/it/projects/file-sets/include-base-directory/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/file-sets/include-base-directory/src/main/assembly/src.xml b/src/it/projects/file-sets/include-base-directory/src/main/assembly/src.xml
index 6daf210..6bb179e 100644
--- a/src/it/projects/file-sets/include-base-directory/src/main/assembly/src.xml
+++ b/src/it/projects/file-sets/include-base-directory/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-sets/include-base-directory/src/main/java/test/App.java b/src/it/projects/file-sets/include-base-directory/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/file-sets/include-base-directory/src/main/java/test/App.java
+++ b/src/it/projects/file-sets/include-base-directory/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/file-sets/include-base-directory/src/test/java/test/AppTest.java b/src/it/projects/file-sets/include-base-directory/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/file-sets/include-base-directory/src/test/java/test/AppTest.java
+++ b/src/it/projects/file-sets/include-base-directory/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/file-sets/include-base-directory/verify.bsh b/src/it/projects/file-sets/include-base-directory/verify.bsh
index c0efdab..37b711e 100644
--- a/src/it/projects/file-sets/include-base-directory/verify.bsh
+++ b/src/it/projects/file-sets/include-base-directory/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/file-sets/include-parent-dir/child/pom.xml b/src/it/projects/file-sets/include-parent-dir/child/pom.xml
index 5478605..78fd9b2 100644
--- a/src/it/projects/file-sets/include-parent-dir/child/pom.xml
+++ b/src/it/projects/file-sets/include-parent-dir/child/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>include-parent-dir</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/file-sets/include-parent-dir/child/src/assemble/parent.xml b/src/it/projects/file-sets/include-parent-dir/child/src/assemble/parent.xml
index 2c195bc..6ddf5cd 100644
--- a/src/it/projects/file-sets/include-parent-dir/child/src/assemble/parent.xml
+++ b/src/it/projects/file-sets/include-parent-dir/child/src/assemble/parent.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-sets/include-parent-dir/child/src/main/java/test/App.java b/src/it/projects/file-sets/include-parent-dir/child/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/file-sets/include-parent-dir/child/src/main/java/test/App.java
+++ b/src/it/projects/file-sets/include-parent-dir/child/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/file-sets/include-parent-dir/child/src/test/java/test/AppTest.java b/src/it/projects/file-sets/include-parent-dir/child/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/file-sets/include-parent-dir/child/src/test/java/test/AppTest.java
+++ b/src/it/projects/file-sets/include-parent-dir/child/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/file-sets/include-parent-dir/pom.xml b/src/it/projects/file-sets/include-parent-dir/pom.xml
index 6bc26eb..9c25a1f 100644
--- a/src/it/projects/file-sets/include-parent-dir/pom.xml
+++ b/src/it/projects/file-sets/include-parent-dir/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -24,4 +44,4 @@
   <modules>
     <module>child</module>
   </modules>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/file-sets/include-parent-dir/verify.bsh b/src/it/projects/file-sets/include-parent-dir/verify.bsh
index 72b5d13..fe42f24 100644
--- a/src/it/projects/file-sets/include-parent-dir/verify.bsh
+++ b/src/it/projects/file-sets/include-parent-dir/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 return new File( basedir, "child/target/child-1.0-SNAPSHOT-parent/child/pom.xml" ).exists();
diff --git a/src/it/projects/file-sets/multimodule-unix-lineEndings/child/pom.xml b/src/it/projects/file-sets/multimodule-unix-lineEndings/child/pom.xml
index c047cb6..1b9ebbf 100644
--- a/src/it/projects/file-sets/multimodule-unix-lineEndings/child/pom.xml
+++ b/src/it/projects/file-sets/multimodule-unix-lineEndings/child/pom.xml
@@ -1,10 +1,31 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
     <groupId>org.apache.maven.plugin.assembly.test</groupId>
     <artifactId>it-project-parent</artifactId>
     <version>1</version>
+    <relativePath>../../../../it-project-parent/pom.xml</relativePath>
   </parent>
   
   <artifactId>child</artifactId>
diff --git a/src/it/projects/file-sets/multimodule-unix-lineEndings/child/src/main/assembly/src.xml b/src/it/projects/file-sets/multimodule-unix-lineEndings/child/src/main/assembly/src.xml
index f2e0c81..f3e2f5f 100644
--- a/src/it/projects/file-sets/multimodule-unix-lineEndings/child/src/main/assembly/src.xml
+++ b/src/it/projects/file-sets/multimodule-unix-lineEndings/child/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-sets/multimodule-unix-lineEndings/pom.xml b/src/it/projects/file-sets/multimodule-unix-lineEndings/pom.xml
index b0a847d..62562b3 100644
--- a/src/it/projects/file-sets/multimodule-unix-lineEndings/pom.xml
+++ b/src/it/projects/file-sets/multimodule-unix-lineEndings/pom.xml
@@ -1,10 +1,31 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
     <groupId>org.apache.maven.plugin.assembly.test</groupId>
     <artifactId>it-project-parent</artifactId>
     <version>1</version>
+    <relativePath>../../../it-project-parent/pom.xml</relativePath>
   </parent>
   
   <artifactId>filtered-multimodule-parent</artifactId>
diff --git a/src/it/projects/file-sets/multimodule-unix-lineEndings/src/main/assembly/bin.xml b/src/it/projects/file-sets/multimodule-unix-lineEndings/src/main/assembly/bin.xml
index c120fbb..7e9b952 100644
--- a/src/it/projects/file-sets/multimodule-unix-lineEndings/src/main/assembly/bin.xml
+++ b/src/it/projects/file-sets/multimodule-unix-lineEndings/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-sets/multimodule-unix-lineEndings/src/main/java/org/apache/maven/plugin/assembly/test/App.java b/src/it/projects/file-sets/multimodule-unix-lineEndings/src/main/java/org/apache/maven/plugin/assembly/test/App.java
index 4fa5eb2..3b568c3 100644
--- a/src/it/projects/file-sets/multimodule-unix-lineEndings/src/main/java/org/apache/maven/plugin/assembly/test/App.java
+++ b/src/it/projects/file-sets/multimodule-unix-lineEndings/src/main/java/org/apache/maven/plugin/assembly/test/App.java
@@ -1,5 +1,25 @@
 package org.apache.maven.plugin.assembly.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/file-sets/multimodule-unix-lineEndings/verify.bsh b/src/it/projects/file-sets/multimodule-unix-lineEndings/verify.bsh
index 0e4c819..181a8e8 100644
--- a/src/it/projects/file-sets/multimodule-unix-lineEndings/verify.bsh
+++ b/src/it/projects/file-sets/multimodule-unix-lineEndings/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File f = new File( basedir, "child/target/child-1-src/test.txt" );
@@ -32,4 +51,4 @@
     System.out.println( "test.txt has an extra line ending at the end of the file" );
     return false;
 }
-return true;
\ No newline at end of file
+return true;
diff --git a/src/it/projects/file-sets/multimodule-win-lineEndings/child/pom.xml b/src/it/projects/file-sets/multimodule-win-lineEndings/child/pom.xml
index c047cb6..ec1dd59 100644
--- a/src/it/projects/file-sets/multimodule-win-lineEndings/child/pom.xml
+++ b/src/it/projects/file-sets/multimodule-win-lineEndings/child/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/file-sets/multimodule-win-lineEndings/child/src/main/assembly/src.xml b/src/it/projects/file-sets/multimodule-win-lineEndings/child/src/main/assembly/src.xml
index 5116b33..fde76f4 100644
--- a/src/it/projects/file-sets/multimodule-win-lineEndings/child/src/main/assembly/src.xml
+++ b/src/it/projects/file-sets/multimodule-win-lineEndings/child/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-sets/multimodule-win-lineEndings/pom.xml b/src/it/projects/file-sets/multimodule-win-lineEndings/pom.xml
index b0a847d..62562b3 100644
--- a/src/it/projects/file-sets/multimodule-win-lineEndings/pom.xml
+++ b/src/it/projects/file-sets/multimodule-win-lineEndings/pom.xml
@@ -1,10 +1,31 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
     <groupId>org.apache.maven.plugin.assembly.test</groupId>
     <artifactId>it-project-parent</artifactId>
     <version>1</version>
+    <relativePath>../../../it-project-parent/pom.xml</relativePath>
   </parent>
   
   <artifactId>filtered-multimodule-parent</artifactId>
diff --git a/src/it/projects/file-sets/multimodule-win-lineEndings/src/main/assembly/bin.xml b/src/it/projects/file-sets/multimodule-win-lineEndings/src/main/assembly/bin.xml
index c120fbb..7e9b952 100644
--- a/src/it/projects/file-sets/multimodule-win-lineEndings/src/main/assembly/bin.xml
+++ b/src/it/projects/file-sets/multimodule-win-lineEndings/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-sets/multimodule-win-lineEndings/src/main/java/org/apache/maven/plugin/assembly/test/App.java b/src/it/projects/file-sets/multimodule-win-lineEndings/src/main/java/org/apache/maven/plugin/assembly/test/App.java
index 4fa5eb2..3b568c3 100644
--- a/src/it/projects/file-sets/multimodule-win-lineEndings/src/main/java/org/apache/maven/plugin/assembly/test/App.java
+++ b/src/it/projects/file-sets/multimodule-win-lineEndings/src/main/java/org/apache/maven/plugin/assembly/test/App.java
@@ -1,5 +1,25 @@
 package org.apache.maven.plugin.assembly.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/file-sets/multimodule-win-lineEndings/verify.bsh b/src/it/projects/file-sets/multimodule-win-lineEndings/verify.bsh
index 12eeef3..2dfae6d 100644
--- a/src/it/projects/file-sets/multimodule-win-lineEndings/verify.bsh
+++ b/src/it/projects/file-sets/multimodule-win-lineEndings/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File f = new File( basedir, "child/target/child-1-src/test.txt" );
@@ -32,4 +51,4 @@
     System.out.println( "test.txt has an extra line ending at the end of the file" );
     return false;
 }
-return true;
\ No newline at end of file
+return true;
diff --git a/src/it/projects/file-sets/use-default-excludes/pom.xml b/src/it/projects/file-sets/use-default-excludes/pom.xml
index 25c3c0c..15552e6 100644
--- a/src/it/projects/file-sets/use-default-excludes/pom.xml
+++ b/src/it/projects/file-sets/use-default-excludes/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/file-sets/use-default-excludes/src/main/assembly/src.xml b/src/it/projects/file-sets/use-default-excludes/src/main/assembly/src.xml
index 8fd0331..46829ca 100644
--- a/src/it/projects/file-sets/use-default-excludes/src/main/assembly/src.xml
+++ b/src/it/projects/file-sets/use-default-excludes/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/file-sets/use-default-excludes/src/main/java/test/App.java b/src/it/projects/file-sets/use-default-excludes/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/file-sets/use-default-excludes/src/main/java/test/App.java
+++ b/src/it/projects/file-sets/use-default-excludes/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/file-sets/use-default-excludes/src/test/java/test/AppTest.java b/src/it/projects/file-sets/use-default-excludes/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/file-sets/use-default-excludes/src/test/java/test/AppTest.java
+++ b/src/it/projects/file-sets/use-default-excludes/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/file-sets/use-default-excludes/verify.bsh b/src/it/projects/file-sets/use-default-excludes/verify.bsh
index 6cd5e6c..8f4c8ec 100644
--- a/src/it/projects/file-sets/use-default-excludes/verify.bsh
+++ b/src/it/projects/file-sets/use-default-excludes/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/files/filtered-sysprop/pom.xml b/src/it/projects/files/filtered-sysprop/pom.xml
index 0524be4..d795fbf 100644
--- a/src/it/projects/files/filtered-sysprop/pom.xml
+++ b/src/it/projects/files/filtered-sysprop/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/files/filtered-sysprop/src/assemble/bin.xml b/src/it/projects/files/filtered-sysprop/src/assemble/bin.xml
index 2981566..1fa9bff 100644
--- a/src/it/projects/files/filtered-sysprop/src/assemble/bin.xml
+++ b/src/it/projects/files/filtered-sysprop/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/files/filtered-sysprop/verify.bsh b/src/it/projects/files/filtered-sysprop/verify.bsh
index b756d4d..1aa0d44 100644
--- a/src/it/projects/files/filtered-sysprop/verify.bsh
+++ b/src/it/projects/files/filtered-sysprop/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 try
diff --git a/src/it/projects/files/multimodule-relativePath/a.properties b/src/it/projects/files/multimodule-relativePath/a.properties
index 714b232..aa0aca5 100644
--- a/src/it/projects/files/multimodule-relativePath/a.properties
+++ b/src/it/projects/files/multimodule-relativePath/a.properties
@@ -1 +1,18 @@
+# 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.
+
 testProp=boo
diff --git a/src/it/projects/files/multimodule-relativePath/child/pom.xml b/src/it/projects/files/multimodule-relativePath/child/pom.xml
index 3803ac3..822ef25 100644
--- a/src/it/projects/files/multimodule-relativePath/child/pom.xml
+++ b/src/it/projects/files/multimodule-relativePath/child/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/files/multimodule-relativePath/child/src/assemble/bin.xml b/src/it/projects/files/multimodule-relativePath/child/src/assemble/bin.xml
index d4b5ce5..f2cd791 100644
--- a/src/it/projects/files/multimodule-relativePath/child/src/assemble/bin.xml
+++ b/src/it/projects/files/multimodule-relativePath/child/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/files/multimodule-relativePath/pom.xml b/src/it/projects/files/multimodule-relativePath/pom.xml
index 9e1ae99..d8c54b7 100644
--- a/src/it/projects/files/multimodule-relativePath/pom.xml
+++ b/src/it/projects/files/multimodule-relativePath/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/files/multimodule-relativePath/verify.bsh b/src/it/projects/files/multimodule-relativePath/verify.bsh
index 03133af..feec574 100644
--- a/src/it/projects/files/multimodule-relativePath/verify.bsh
+++ b/src/it/projects/files/multimodule-relativePath/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File a = new File( basedir, "child/target/child-1.0-bin/a/file.txt");
diff --git a/src/it/projects/filtering-feature/filter-comp-descriptor-path/assembly.xml b/src/it/projects/filtering-feature/filter-comp-descriptor-path/assembly.xml
index 204bbf0..9868a9c 100644
--- a/src/it/projects/filtering-feature/filter-comp-descriptor-path/assembly.xml
+++ b/src/it/projects/filtering-feature/filter-comp-descriptor-path/assembly.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/filtering-feature/filter-comp-descriptor-path/component.xml b/src/it/projects/filtering-feature/filter-comp-descriptor-path/component.xml
index 44e738a..89cde8c 100644
--- a/src/it/projects/filtering-feature/filter-comp-descriptor-path/component.xml
+++ b/src/it/projects/filtering-feature/filter-comp-descriptor-path/component.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <component>
   <files>
     <file>
diff --git a/src/it/projects/filtering-feature/filter-comp-descriptor-path/pom.xml b/src/it/projects/filtering-feature/filter-comp-descriptor-path/pom.xml
index de44d4f..1d2aea3 100644
--- a/src/it/projects/filtering-feature/filter-comp-descriptor-path/pom.xml
+++ b/src/it/projects/filtering-feature/filter-comp-descriptor-path/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
diff --git a/src/it/projects/filtering-feature/filter-comp-descriptor-path/verify.bsh b/src/it/projects/filtering-feature/filter-comp-descriptor-path/verify.bsh
index 70d0a9a..e97847c 100644
--- a/src/it/projects/filtering-feature/filter-comp-descriptor-path/verify.bsh
+++ b/src/it/projects/filtering-feature/filter-comp-descriptor-path/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File file = new File( basedir, "target/test-1.0-filtered-assembly/pom.xml" );
diff --git a/src/it/projects/filtering-feature/filters-defined-in-build/invoker.properties b/src/it/projects/filtering-feature/filters-defined-in-build/invoker.properties
index c743aa4..9ef4967 100644
--- a/src/it/projects/filtering-feature/filters-defined-in-build/invoker.properties
+++ b/src/it/projects/filtering-feature/filters-defined-in-build/invoker.properties
@@ -14,5 +14,4 @@
 # KIND, either express or implied.  See the License for the
 # specific language governing permissions and limitations
 # under the License.
-
 invoker.goals=clean package
diff --git a/src/it/projects/filtering-feature/filters-defined-in-build/pom.xml b/src/it/projects/filtering-feature/filters-defined-in-build/pom.xml
index 1544267..c471291 100644
--- a/src/it/projects/filtering-feature/filters-defined-in-build/pom.xml
+++ b/src/it/projects/filtering-feature/filters-defined-in-build/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/filtering-feature/filters-defined-in-build/src/main/assembly/descriptor.xml b/src/it/projects/filtering-feature/filters-defined-in-build/src/main/assembly/descriptor.xml
index 5243b96..01ec27a 100644
--- a/src/it/projects/filtering-feature/filters-defined-in-build/src/main/assembly/descriptor.xml
+++ b/src/it/projects/filtering-feature/filters-defined-in-build/src/main/assembly/descriptor.xml
@@ -1,4 +1,24 @@
 <?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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
 
   <id>assembly</id>
@@ -19,4 +39,4 @@
     </fileSet>
   </fileSets>
 
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/filtering-feature/filters-defined-in-build/src/main/config/file-2.properties b/src/it/projects/filtering-feature/filters-defined-in-build/src/main/config/file-2.properties
index dfcdcd9..9dde704 100644
--- a/src/it/projects/filtering-feature/filters-defined-in-build/src/main/config/file-2.properties
+++ b/src/it/projects/filtering-feature/filters-defined-in-build/src/main/config/file-2.properties
@@ -1,3 +1,20 @@
+# 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.
+
 test.build.filter.props.2=${filter.build}
 test.assembly.filter.props.2=${filter.assembly}
-test.pom.props.2=${project.artifactId}-${project.version}.${project.packaging}
\ No newline at end of file
+test.pom.props.2=${project.artifactId}-${project.version}.${project.packaging}
diff --git a/src/it/projects/filtering-feature/filters-defined-in-build/src/main/filters/filter-assembly.properties b/src/it/projects/filtering-feature/filters-defined-in-build/src/main/filters/filter-assembly.properties
index dbb954c..cb46768 100644
--- a/src/it/projects/filtering-feature/filters-defined-in-build/src/main/filters/filter-assembly.properties
+++ b/src/it/projects/filtering-feature/filters-defined-in-build/src/main/filters/filter-assembly.properties
@@ -1 +1,18 @@
-filter.assembly=Filter defined in the Assembly plugin's configuration.
\ No newline at end of file
+# 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.
+
+filter.assembly=Filter defined in the Assembly plugin's configuration.
diff --git a/src/it/projects/filtering-feature/filters-defined-in-build/src/main/filters/filter-build.properties b/src/it/projects/filtering-feature/filters-defined-in-build/src/main/filters/filter-build.properties
index 7decb8d..34dd0a3 100644
--- a/src/it/projects/filtering-feature/filters-defined-in-build/src/main/filters/filter-build.properties
+++ b/src/it/projects/filtering-feature/filters-defined-in-build/src/main/filters/filter-build.properties
@@ -1 +1,18 @@
-filter.build=Filter defined in the projects' build section.
\ No newline at end of file
+# 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.
+
+filter.build=Filter defined in the projects' build section.
diff --git a/src/it/projects/filtering-feature/filters-defined-in-build/verify.bsh b/src/it/projects/filtering-feature/filters-defined-in-build/verify.bsh
index fe53139..d029edf 100644
--- a/src/it/projects/filtering-feature/filters-defined-in-build/verify.bsh
+++ b/src/it/projects/filtering-feature/filters-defined-in-build/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/filter.properties b/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/filter.properties
index 5f8ddab..a38906a 100644
--- a/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/filter.properties
+++ b/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/filter.properties
@@ -1 +1,18 @@
+# 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.
+
 test.properties=foo
diff --git a/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/pom.xml b/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/pom.xml
index cdadd9a..3609814 100644
--- a/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/pom.xml
+++ b/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
@@ -34,4 +54,4 @@
       </plugin>
     </plugins>
   </build>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/src/assemble/bin.xml b/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/src/assemble/bin.xml
index bb422be..2307b51 100644
--- a/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/src/assemble/bin.xml
+++ b/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/verify.bsh b/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/verify.bsh
index 092a759..2f0d936 100644
--- a/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/verify.bsh
+++ b/src/it/projects/filtering-feature/filtersDefinedInAssemblyPluginConfig/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child1/pom.xml b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child1/pom.xml
index 113bb37..5ff2c39 100644
--- a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child1/pom.xml
+++ b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>assembly-assembly-with-module-binaries</artifactId>
     <groupId>org.apache.maven.plugins.assembly.it</groupId>
diff --git a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child1/src/main/java/test/App.java b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child1/src/main/java/test/App.java
+++ b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child1/src/test/java/test/AppTest.java b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child2/pom.xml b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child2/pom.xml
index dfe6de8..a359964 100644
--- a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child2/pom.xml
+++ b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>assembly-assembly-with-module-binaries</artifactId>
     <groupId>org.apache.maven.plugins.assembly.it</groupId>
diff --git a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child2/src/main/java/test/App.java b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child2/src/main/java/test/App.java
+++ b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child2/src/test/java/test/AppTest.java b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child2/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child2/src/test/java/test/AppTest.java
+++ b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/child2/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/pom.xml b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/pom.xml
index 838e867..a531d76 100644
--- a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/pom.xml
+++ b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -31,4 +51,4 @@
       </plugin>
     </plugins>
   </build>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/src/assemble/bin.xml b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/src/assemble/bin.xml
index 52182bf..84eb2d5 100644
--- a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/src/assemble/bin.xml
+++ b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -15,4 +35,4 @@
       </binaries>
     </moduleSet>
   </moduleSets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/test.properties b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/test.properties
index e86dd1e..8c0bdf8 100644
--- a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/test.properties
+++ b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/test.properties
@@ -1 +1,18 @@
+# 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.
+
 descriptor=src/assemble/bin.xml
diff --git a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/verify.bsh b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/verify.bsh
index 55eb5cd..4342cd3 100644
--- a/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/verify.bsh
+++ b/src/it/projects/forking-tests/assembly-assembly-with-module-binaries/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.zip.*;
diff --git a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child1/pom.xml b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child1/pom.xml
index a471ca4..ed9a669 100644
--- a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child1/pom.xml
+++ b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>assembly-attached-with-module-binaries</artifactId>
     <groupId>org.apache.maven.plugins.assembly.it</groupId>
diff --git a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child1/src/main/java/test/App.java b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child1/src/main/java/test/App.java
+++ b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child1/src/test/java/test/AppTest.java b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child2/pom.xml b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child2/pom.xml
index 042e21d..d741851 100644
--- a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child2/pom.xml
+++ b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>assembly-attached-with-module-binaries</artifactId>
     <groupId>org.apache.maven.plugins.assembly.it</groupId>
diff --git a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child2/src/main/java/test/App.java b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child2/src/main/java/test/App.java
+++ b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child2/src/test/java/test/AppTest.java b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child2/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child2/src/test/java/test/AppTest.java
+++ b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/child2/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/pom.xml b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/pom.xml
index 1ea45a8..b98f9fb 100644
--- a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/pom.xml
+++ b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -31,4 +51,4 @@
       </plugin>
     </plugins>
   </build>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/src/assemble/bin.xml b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/src/assemble/bin.xml
index 52182bf..84eb2d5 100644
--- a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/src/assemble/bin.xml
+++ b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -15,4 +35,4 @@
       </binaries>
     </moduleSet>
   </moduleSets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/test.properties b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/test.properties
index e86dd1e..8c0bdf8 100644
--- a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/test.properties
+++ b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/test.properties
@@ -1 +1,18 @@
+# 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.
+
 descriptor=src/assemble/bin.xml
diff --git a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/verify.bsh b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/verify.bsh
index c92772f..a5f72ca 100644
--- a/src/it/projects/forking-tests/assembly-attached-with-module-binaries/verify.bsh
+++ b/src/it/projects/forking-tests/assembly-attached-with-module-binaries/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.zip.*;
diff --git a/src/it/projects/mojo-configuration/archiver-ignorePermissions/pom.xml b/src/it/projects/mojo-configuration/archiver-ignorePermissions/pom.xml
index f9d3cef..fdf4fd1 100644
--- a/src/it/projects/mojo-configuration/archiver-ignorePermissions/pom.xml
+++ b/src/it/projects/mojo-configuration/archiver-ignorePermissions/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
diff --git a/src/it/projects/mojo-configuration/archiver-ignorePermissions/src/main/assembly/bin.xml b/src/it/projects/mojo-configuration/archiver-ignorePermissions/src/main/assembly/bin.xml
index 6052aaf..e347357 100644
--- a/src/it/projects/mojo-configuration/archiver-ignorePermissions/src/main/assembly/bin.xml
+++ b/src/it/projects/mojo-configuration/archiver-ignorePermissions/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly>
   <id>bin</id>
   <formats>
@@ -19,4 +39,4 @@
       <fileMode>777</fileMode>
     </fileSet>
   </fileSets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/mojo-configuration/archiver-ignorePermissions/src/main/java/test/App.java b/src/it/projects/mojo-configuration/archiver-ignorePermissions/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/mojo-configuration/archiver-ignorePermissions/src/main/java/test/App.java
+++ b/src/it/projects/mojo-configuration/archiver-ignorePermissions/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/mojo-configuration/archiver-ignorePermissions/src/test/java/test/AppTest.java b/src/it/projects/mojo-configuration/archiver-ignorePermissions/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/mojo-configuration/archiver-ignorePermissions/src/test/java/test/AppTest.java
+++ b/src/it/projects/mojo-configuration/archiver-ignorePermissions/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/mojo-configuration/archiver-ignorePermissions/verify.bsh b/src/it/projects/mojo-configuration/archiver-ignorePermissions/verify.bsh
index e175e96..5fc410b 100644
--- a/src/it/projects/mojo-configuration/archiver-ignorePermissions/verify.bsh
+++ b/src/it/projects/mojo-configuration/archiver-ignorePermissions/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.util.jar.*;
 import java.util.*;
@@ -19,4 +38,4 @@
   return false;
 }
 
-return true;
\ No newline at end of file
+return true;
diff --git a/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/pom.xml b/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/pom.xml
index 24439da..1ff55c5 100644
--- a/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/pom.xml
+++ b/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
diff --git a/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/src/main/assembly/src.xml b/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/src/main/assembly/src.xml
index e787418..9eafc13 100644
--- a/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/src/main/assembly/src.xml
+++ b/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -16,4 +36,4 @@
       </excludes>
     </fileSet>
   </fileSets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/src/main/assembly/src2.xml b/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/src/main/assembly/src2.xml
index 26232d0..4d836ed 100644
--- a/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/src/main/assembly/src2.xml
+++ b/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/src/main/assembly/src2.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -16,4 +36,4 @@
       </excludes>
     </fileSet>
   </fileSets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/src/main/java/test/App.java b/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/src/main/java/test/App.java
+++ b/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/verify.bsh b/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/verify.bsh
index a976285..625474a 100644
--- a/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/verify.bsh
+++ b/src/it/projects/mojo-configuration/ignoreDirFormatExtensions/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File src = new File( basedir, "target/ignoreDirFormatExtensions-1-src/pom.xml" );
@@ -21,4 +40,4 @@
     }
 }
 
-return src.exists() && src2.exists();
\ No newline at end of file
+return src.exists() && src2.exists();
diff --git a/src/it/projects/mojo-configuration/manifest-with-customEntry/pom.xml b/src/it/projects/mojo-configuration/manifest-with-customEntry/pom.xml
index 58ee465..65b05ef 100644
--- a/src/it/projects/mojo-configuration/manifest-with-customEntry/pom.xml
+++ b/src/it/projects/mojo-configuration/manifest-with-customEntry/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd' xmlns='http://maven.apache.org/POM/4.0.0'>
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/mojo-configuration/manifest-with-customEntry/src/main/java/test/App.java b/src/it/projects/mojo-configuration/manifest-with-customEntry/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/mojo-configuration/manifest-with-customEntry/src/main/java/test/App.java
+++ b/src/it/projects/mojo-configuration/manifest-with-customEntry/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/mojo-configuration/manifest-with-customEntry/src/test/java/test/AppTest.java b/src/it/projects/mojo-configuration/manifest-with-customEntry/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/mojo-configuration/manifest-with-customEntry/src/test/java/test/AppTest.java
+++ b/src/it/projects/mojo-configuration/manifest-with-customEntry/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/mojo-configuration/manifest-with-customEntry/verify.bsh b/src/it/projects/mojo-configuration/manifest-with-customEntry/verify.bsh
index 77e587d..5343be0 100644
--- a/src/it/projects/mojo-configuration/manifest-with-customEntry/verify.bsh
+++ b/src/it/projects/mojo-configuration/manifest-with-customEntry/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.util.jar.*;
 import java.util.*;
diff --git a/src/it/projects/mojo-configuration/manifest-with-mainClass/pom.xml b/src/it/projects/mojo-configuration/manifest-with-mainClass/pom.xml
index 107a2f3..19c09db 100644
--- a/src/it/projects/mojo-configuration/manifest-with-mainClass/pom.xml
+++ b/src/it/projects/mojo-configuration/manifest-with-mainClass/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd' xmlns='http://maven.apache.org/POM/4.0.0'>
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/mojo-configuration/manifest-with-mainClass/src/main/java/test/App.java b/src/it/projects/mojo-configuration/manifest-with-mainClass/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/mojo-configuration/manifest-with-mainClass/src/main/java/test/App.java
+++ b/src/it/projects/mojo-configuration/manifest-with-mainClass/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/mojo-configuration/manifest-with-mainClass/src/test/java/test/AppTest.java b/src/it/projects/mojo-configuration/manifest-with-mainClass/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/mojo-configuration/manifest-with-mainClass/src/test/java/test/AppTest.java
+++ b/src/it/projects/mojo-configuration/manifest-with-mainClass/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/mojo-configuration/manifest-with-mainClass/verify.bsh b/src/it/projects/mojo-configuration/manifest-with-mainClass/verify.bsh
index 7ca1702..071f08d 100644
--- a/src/it/projects/mojo-configuration/manifest-with-mainClass/verify.bsh
+++ b/src/it/projects/mojo-configuration/manifest-with-mainClass/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.util.jar.*;
 import java.util.*;
diff --git a/src/it/projects/mojo-configuration/massembly-291/pom.xml b/src/it/projects/mojo-configuration/massembly-291/pom.xml
index 65aca75..c6bfa69 100644
--- a/src/it/projects/mojo-configuration/massembly-291/pom.xml
+++ b/src/it/projects/mojo-configuration/massembly-291/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
@@ -28,6 +48,7 @@
                 <descriptor>src/main/assembly/src.xml</descriptor>
               </descriptors>
               <appendAssemblyId>false</appendAssemblyId>
+              <tarLongFileMode>posix</tarLongFileMode>
             </configuration>
           </execution>
         </executions>
diff --git a/src/it/projects/mojo-configuration/massembly-291/src/main/assembly/src.xml b/src/it/projects/mojo-configuration/massembly-291/src/main/assembly/src.xml
index bafed6b..3b22579 100644
--- a/src/it/projects/mojo-configuration/massembly-291/src/main/assembly/src.xml
+++ b/src/it/projects/mojo-configuration/massembly-291/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -17,4 +37,4 @@
       </excludes>
     </fileSet>
   </fileSets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/mojo-configuration/massembly-291/test.properties b/src/it/projects/mojo-configuration/massembly-291/test.properties
index 4af332b..586ead7 100644
--- a/src/it/projects/mojo-configuration/massembly-291/test.properties
+++ b/src/it/projects/mojo-configuration/massembly-291/test.properties
@@ -1 +1,18 @@
+# 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.
+
 altDeploymentRepository=test::default::file://${project.build.directory}/deploy
diff --git a/src/it/projects/mojo-configuration/massembly-291/verify.bsh b/src/it/projects/mojo-configuration/massembly-291/verify.bsh
index 9aaed6b..c487625 100644
--- a/src/it/projects/mojo-configuration/massembly-291/verify.bsh
+++ b/src/it/projects/mojo-configuration/massembly-291/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 String base = "target/deploy/org/test/massembly-291/1/massembly-291-1";
@@ -35,4 +54,4 @@
     }
 }
 
-return pom.exists() && zip.exists() && tgz.exists();
\ No newline at end of file
+return pom.exists() && zip.exists() && tgz.exists();
diff --git a/src/it/projects/mojo-configuration/massembly-301/pom.xml b/src/it/projects/mojo-configuration/massembly-301/pom.xml
index 80e04a9..3fcccca 100644
--- a/src/it/projects/mojo-configuration/massembly-301/pom.xml
+++ b/src/it/projects/mojo-configuration/massembly-301/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
@@ -28,6 +48,7 @@
                 <descriptor>src/main/assembly/src.xml</descriptor>
               </descriptors>
               <appendAssemblyId>false</appendAssemblyId>
+              <tarLongFileMode>posix</tarLongFileMode>
             </configuration>
           </execution>
         </executions>
diff --git a/src/it/projects/mojo-configuration/massembly-301/src/main/assembly/src.xml b/src/it/projects/mojo-configuration/massembly-301/src/main/assembly/src.xml
index bafed6b..3b22579 100644
--- a/src/it/projects/mojo-configuration/massembly-301/src/main/assembly/src.xml
+++ b/src/it/projects/mojo-configuration/massembly-301/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
@@ -17,4 +37,4 @@
       </excludes>
     </fileSet>
   </fileSets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/mojo-configuration/massembly-301/src/main/java/test/App.java b/src/it/projects/mojo-configuration/massembly-301/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/mojo-configuration/massembly-301/src/main/java/test/App.java
+++ b/src/it/projects/mojo-configuration/massembly-301/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/mojo-configuration/massembly-301/test.properties b/src/it/projects/mojo-configuration/massembly-301/test.properties
index 2d8d4f8b..586ead7 100644
--- a/src/it/projects/mojo-configuration/massembly-301/test.properties
+++ b/src/it/projects/mojo-configuration/massembly-301/test.properties
@@ -1 +1,18 @@
-altDeploymentRepository=test::default::file://${project.build.directory}/deploy
\ No newline at end of file
+# 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.
+
+altDeploymentRepository=test::default::file://${project.build.directory}/deploy
diff --git a/src/it/projects/mojo-configuration/massembly-301/verify.bsh b/src/it/projects/mojo-configuration/massembly-301/verify.bsh
index 67f0c86..0f2c8df 100644
--- a/src/it/projects/mojo-configuration/massembly-301/verify.bsh
+++ b/src/it/projects/mojo-configuration/massembly-301/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 String base = "target/deploy/org/test/massembly-301/1/massembly-301-1";
@@ -35,4 +54,4 @@
     }
 }
 
-return jar.exists() && zip.exists() && tgz.exists();
\ No newline at end of file
+return jar.exists() && zip.exists() && tgz.exists();
diff --git a/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/pom.xml b/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/pom.xml
index 26fa6bd..47cc494 100644
--- a/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/pom.xml
+++ b/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
diff --git a/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/src/main/java/test/App.java b/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/src/main/java/test/App.java
+++ b/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/src/test/java/test/AppTest.java b/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/src/test/java/test/AppTest.java
+++ b/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/verify.bsh b/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/verify.bsh
index 3249ee2..3f7fc5b 100644
--- a/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/verify.bsh
+++ b/src/it/projects/mojo-configuration/no-appendAssemblyId-no-classifier/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.util.jar.*;
 import java.util.*;
@@ -11,4 +30,4 @@
 
 JarEntry entry = jarFile.getEntry( "org/apache/maven/plugin/assembly/mojos/AbstractAssemblyMojo.class" );
 
-return entry != null;
\ No newline at end of file
+return entry != null;
diff --git a/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/pom.xml b/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/pom.xml
index 9b27407..1088930 100644
--- a/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/pom.xml
+++ b/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
diff --git a/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/src/main/assembly/bin.xml b/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/src/main/assembly/bin.xml
index 7913195..835cffc 100644
--- a/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/src/main/assembly/bin.xml
+++ b/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/test.properties b/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/test.properties
index 279b1d7..46cd704 100644
--- a/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/test.properties
+++ b/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/test.properties
@@ -1 +1,18 @@
-assembly.skipAssembly=true
\ No newline at end of file
+# 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.
+
+assembly.skipAssembly=true
diff --git a/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/verify.bsh b/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/verify.bsh
index 689ab05..831a7f9 100644
--- a/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/verify.bsh
+++ b/src/it/projects/mojo-configuration/skipAssemblyCLIPropertySet/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.util.jar.*;
 import java.util.*;
@@ -5,4 +24,4 @@
 
 File file = new File( basedir, "target/skipAssemblyCLIPropertySet-1.zip" );
 
-return !file.exists();
\ No newline at end of file
+return !file.exists();
diff --git a/src/it/projects/mojo-tests/single-in-one-project-hierarchy/pom.xml b/src/it/projects/mojo-tests/single-in-one-project-hierarchy/pom.xml
index f300aae..942f3f7 100644
--- a/src/it/projects/mojo-tests/single-in-one-project-hierarchy/pom.xml
+++ b/src/it/projects/mojo-tests/single-in-one-project-hierarchy/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/mojo-tests/single-in-one-project-hierarchy/src/assemble/bin.xml b/src/it/projects/mojo-tests/single-in-one-project-hierarchy/src/assemble/bin.xml
index b48da5e..962ccf7 100644
--- a/src/it/projects/mojo-tests/single-in-one-project-hierarchy/src/assemble/bin.xml
+++ b/src/it/projects/mojo-tests/single-in-one-project-hierarchy/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/mojo-tests/single-in-one-project-hierarchy/src/main/java/test/App.java b/src/it/projects/mojo-tests/single-in-one-project-hierarchy/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/mojo-tests/single-in-one-project-hierarchy/src/main/java/test/App.java
+++ b/src/it/projects/mojo-tests/single-in-one-project-hierarchy/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/mojo-tests/single-in-one-project-hierarchy/src/test/java/test/AppTest.java b/src/it/projects/mojo-tests/single-in-one-project-hierarchy/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/mojo-tests/single-in-one-project-hierarchy/src/test/java/test/AppTest.java
+++ b/src/it/projects/mojo-tests/single-in-one-project-hierarchy/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/mojo-tests/single-in-one-project-hierarchy/verify.bsh b/src/it/projects/mojo-tests/single-in-one-project-hierarchy/verify.bsh
index 033cb5a..ebff7fb 100644
--- a/src/it/projects/mojo-tests/single-in-one-project-hierarchy/verify.bsh
+++ b/src/it/projects/mojo-tests/single-in-one-project-hierarchy/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.File;
 
 return new File( basedir, "target/single-in-one-project-hierarchy-1.0-SNAPSHOT-bin/lib/junit.jar" ).exists();
diff --git a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/pom.xml b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/pom.xml
index 64b3b24..1a83917 100644
--- a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/pom.xml
+++ b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/src/assemble/bin.xml b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/src/assemble/bin.xml
index b48da5e..962ccf7 100644
--- a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/src/assemble/bin.xml
+++ b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/src/main/java/test/App.java b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/src/main/java/test/App.java
+++ b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/src/test/java/test/AppTest.java b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/src/test/java/test/AppTest.java
+++ b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/pom.xml b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/pom.xml
index c1e6751..a220157 100644
--- a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/pom.xml
+++ b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/src/assemble/bin.xml b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/src/assemble/bin.xml
index b48da5e..962ccf7 100644
--- a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/src/assemble/bin.xml
+++ b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/src/main/java/test/App.java b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/src/main/java/test/App.java
+++ b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/src/test/java/test/AppTest.java b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/src/test/java/test/AppTest.java
+++ b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/child2/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/pom.xml b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/pom.xml
index 71785e6..ad27575 100644
--- a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/pom.xml
+++ b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/verify.bsh b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/verify.bsh
index 6bfb56b..d084d55 100644
--- a/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/verify.bsh
+++ b/src/it/projects/mojo-tests/single-twice-in-multimodule-hierarchy/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.File;
 
 boolean result = true;
diff --git a/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/pom.xml b/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/pom.xml
index 0cba032..16d73c4 100644
--- a/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/pom.xml
+++ b/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/src/assemble/bin.xml b/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/src/assemble/bin.xml
index b48da5e..962ccf7 100644
--- a/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/src/assemble/bin.xml
+++ b/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/src/main/java/test/App.java b/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/src/main/java/test/App.java
+++ b/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/src/test/java/test/AppTest.java b/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/src/test/java/test/AppTest.java
+++ b/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/verify.bsh b/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/verify.bsh
index ea47b79..c1ff037 100644
--- a/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/verify.bsh
+++ b/src/it/projects/mojo-tests/single-twice-in-one-project-hierarchy/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.File;
 
 boolean result = true;
diff --git a/src/it/projects/multimodule/massembly-298/child1/pom.xml b/src/it/projects/multimodule/massembly-298/child1/pom.xml
index 5a581c3..cb09610 100644
--- a/src/it/projects/multimodule/massembly-298/child1/pom.xml
+++ b/src/it/projects/multimodule/massembly-298/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>massembly-298</artifactId>
     <groupId>org.test</groupId>
@@ -17,4 +37,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/massembly-298/child1/src/main/java/org/test/child1/App.java b/src/it/projects/multimodule/massembly-298/child1/src/main/java/org/test/child1/App.java
index d910fbb..de889bd 100644
--- a/src/it/projects/multimodule/massembly-298/child1/src/main/java/org/test/child1/App.java
+++ b/src/it/projects/multimodule/massembly-298/child1/src/main/java/org/test/child1/App.java
@@ -1,5 +1,25 @@
 package org.test.child1;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/massembly-298/child1/src/main/java/org/test/child1/App2.java b/src/it/projects/multimodule/massembly-298/child1/src/main/java/org/test/child1/App2.java
index fa05292..e45e9ee 100644
--- a/src/it/projects/multimodule/massembly-298/child1/src/main/java/org/test/child1/App2.java
+++ b/src/it/projects/multimodule/massembly-298/child1/src/main/java/org/test/child1/App2.java
@@ -1,5 +1,25 @@
 package org.test.child1;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/massembly-298/child1/src/test/java/org/test/AppTest.java b/src/it/projects/multimodule/massembly-298/child1/src/test/java/org/test/AppTest.java
index b84ebc6..35ee617 100644
--- a/src/it/projects/multimodule/massembly-298/child1/src/test/java/org/test/AppTest.java
+++ b/src/it/projects/multimodule/massembly-298/child1/src/test/java/org/test/AppTest.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/massembly-298/child2/pom.xml b/src/it/projects/multimodule/massembly-298/child2/pom.xml
index 7795bee..3eb809a 100644
--- a/src/it/projects/multimodule/massembly-298/child2/pom.xml
+++ b/src/it/projects/multimodule/massembly-298/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>massembly-298</artifactId>
     <groupId>org.test</groupId>
@@ -17,4 +37,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/massembly-298/child2/src/main/java/org/test/child2/App.java b/src/it/projects/multimodule/massembly-298/child2/src/main/java/org/test/child2/App.java
index 9380f33..2ed5856 100644
--- a/src/it/projects/multimodule/massembly-298/child2/src/main/java/org/test/child2/App.java
+++ b/src/it/projects/multimodule/massembly-298/child2/src/main/java/org/test/child2/App.java
@@ -1,5 +1,25 @@
 package org.test.child2;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/massembly-298/child2/src/main/java/org/test/other/App.java b/src/it/projects/multimodule/massembly-298/child2/src/main/java/org/test/other/App.java
index fbd1d1c..59f7199 100644
--- a/src/it/projects/multimodule/massembly-298/child2/src/main/java/org/test/other/App.java
+++ b/src/it/projects/multimodule/massembly-298/child2/src/main/java/org/test/other/App.java
@@ -1,5 +1,25 @@
 package org.test.other;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/massembly-298/child2/src/test/java/org/test/AppTest.java b/src/it/projects/multimodule/massembly-298/child2/src/test/java/org/test/AppTest.java
index b84ebc6..35ee617 100644
--- a/src/it/projects/multimodule/massembly-298/child2/src/test/java/org/test/AppTest.java
+++ b/src/it/projects/multimodule/massembly-298/child2/src/test/java/org/test/AppTest.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/massembly-298/pom.xml b/src/it/projects/multimodule/massembly-298/pom.xml
index af006ce..df6fe53 100644
--- a/src/it/projects/multimodule/massembly-298/pom.xml
+++ b/src/it/projects/multimodule/massembly-298/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/multimodule/massembly-298/src/assemble/bin.xml b/src/it/projects/multimodule/massembly-298/src/assemble/bin.xml
index c3a3791..ebdbed7 100644
--- a/src/it/projects/multimodule/massembly-298/src/assemble/bin.xml
+++ b/src/it/projects/multimodule/massembly-298/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
diff --git a/src/it/projects/multimodule/massembly-298/verify.bsh b/src/it/projects/multimodule/massembly-298/verify.bsh
index 8d18fce..c6db984 100644
--- a/src/it/projects/multimodule/massembly-298/verify.bsh
+++ b/src/it/projects/multimodule/massembly-298/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.util.zip.*;
 
diff --git a/src/it/projects/multimodule/multimodule-binariesNotSource/child1/pom.xml b/src/it/projects/multimodule/multimodule-binariesNotSource/child1/pom.xml
index 19fb2bf..30048c9 100644
--- a/src/it/projects/multimodule/multimodule-binariesNotSource/child1/pom.xml
+++ b/src/it/projects/multimodule/multimodule-binariesNotSource/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>org.test</groupId>
@@ -17,4 +37,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/multimodule-binariesNotSource/child1/src/main/java/org/test/App.java b/src/it/projects/multimodule/multimodule-binariesNotSource/child1/src/main/java/org/test/App.java
index 0b3975d..5120975 100644
--- a/src/it/projects/multimodule/multimodule-binariesNotSource/child1/src/main/java/org/test/App.java
+++ b/src/it/projects/multimodule/multimodule-binariesNotSource/child1/src/main/java/org/test/App.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/multimodule-binariesNotSource/child1/src/test/java/org/test/AppTest.java b/src/it/projects/multimodule/multimodule-binariesNotSource/child1/src/test/java/org/test/AppTest.java
index b84ebc6..35ee617 100644
--- a/src/it/projects/multimodule/multimodule-binariesNotSource/child1/src/test/java/org/test/AppTest.java
+++ b/src/it/projects/multimodule/multimodule-binariesNotSource/child1/src/test/java/org/test/AppTest.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/multimodule-binariesNotSource/child2/pom.xml b/src/it/projects/multimodule/multimodule-binariesNotSource/child2/pom.xml
index ddaf833..31463e0 100644
--- a/src/it/projects/multimodule/multimodule-binariesNotSource/child2/pom.xml
+++ b/src/it/projects/multimodule/multimodule-binariesNotSource/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>org.test</groupId>
@@ -17,4 +37,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/multimodule-binariesNotSource/child2/src/main/java/org/test/App.java b/src/it/projects/multimodule/multimodule-binariesNotSource/child2/src/main/java/org/test/App.java
index 0b3975d..5120975 100644
--- a/src/it/projects/multimodule/multimodule-binariesNotSource/child2/src/main/java/org/test/App.java
+++ b/src/it/projects/multimodule/multimodule-binariesNotSource/child2/src/main/java/org/test/App.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/multimodule-binariesNotSource/child2/src/test/java/org/test/AppTest.java b/src/it/projects/multimodule/multimodule-binariesNotSource/child2/src/test/java/org/test/AppTest.java
index b84ebc6..35ee617 100644
--- a/src/it/projects/multimodule/multimodule-binariesNotSource/child2/src/test/java/org/test/AppTest.java
+++ b/src/it/projects/multimodule/multimodule-binariesNotSource/child2/src/test/java/org/test/AppTest.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/multimodule-binariesNotSource/child3/pom.xml b/src/it/projects/multimodule/multimodule-binariesNotSource/child3/pom.xml
index c9fe3f2..3c32af1 100644
--- a/src/it/projects/multimodule/multimodule-binariesNotSource/child3/pom.xml
+++ b/src/it/projects/multimodule/multimodule-binariesNotSource/child3/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>org.test</groupId>
@@ -17,4 +37,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/multimodule-binariesNotSource/child3/src/main/java/org/test/App.java b/src/it/projects/multimodule/multimodule-binariesNotSource/child3/src/main/java/org/test/App.java
index 0b3975d..5120975 100644
--- a/src/it/projects/multimodule/multimodule-binariesNotSource/child3/src/main/java/org/test/App.java
+++ b/src/it/projects/multimodule/multimodule-binariesNotSource/child3/src/main/java/org/test/App.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/multimodule-binariesNotSource/child3/src/test/java/org/test/AppTest.java b/src/it/projects/multimodule/multimodule-binariesNotSource/child3/src/test/java/org/test/AppTest.java
index b84ebc6..35ee617 100644
--- a/src/it/projects/multimodule/multimodule-binariesNotSource/child3/src/test/java/org/test/AppTest.java
+++ b/src/it/projects/multimodule/multimodule-binariesNotSource/child3/src/test/java/org/test/AppTest.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/multimodule-binariesNotSource/pom.xml b/src/it/projects/multimodule/multimodule-binariesNotSource/pom.xml
index 994d21a..88f0d30 100644
--- a/src/it/projects/multimodule/multimodule-binariesNotSource/pom.xml
+++ b/src/it/projects/multimodule/multimodule-binariesNotSource/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/multimodule/multimodule-binariesNotSource/src/assemble/bin.xml b/src/it/projects/multimodule/multimodule-binariesNotSource/src/assemble/bin.xml
index 9661d1c..c72e302 100644
--- a/src/it/projects/multimodule/multimodule-binariesNotSource/src/assemble/bin.xml
+++ b/src/it/projects/multimodule/multimodule-binariesNotSource/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
diff --git a/src/it/projects/multimodule/multimodule-binariesNotSource/verify.bsh b/src/it/projects/multimodule/multimodule-binariesNotSource/verify.bsh
index 511ba30..8c0e8db 100644
--- a/src/it/projects/multimodule/multimodule-binariesNotSource/verify.bsh
+++ b/src/it/projects/multimodule/multimodule-binariesNotSource/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/multimodule/multimodule-filteredFileSet/child/pom.xml b/src/it/projects/multimodule/multimodule-filteredFileSet/child/pom.xml
index aa0cf2b..70b5949 100644
--- a/src/it/projects/multimodule/multimodule-filteredFileSet/child/pom.xml
+++ b/src/it/projects/multimodule/multimodule-filteredFileSet/child/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/multimodule/multimodule-filteredFileSet/child/verify.bsh b/src/it/projects/multimodule/multimodule-filteredFileSet/child/verify.bsh
index b756d4d..1aa0d44 100644
--- a/src/it/projects/multimodule/multimodule-filteredFileSet/child/verify.bsh
+++ b/src/it/projects/multimodule/multimodule-filteredFileSet/child/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 try
diff --git a/src/it/projects/multimodule/multimodule-filteredFileSet/pom.xml b/src/it/projects/multimodule/multimodule-filteredFileSet/pom.xml
index 4dde89e..f304a2e 100644
--- a/src/it/projects/multimodule/multimodule-filteredFileSet/pom.xml
+++ b/src/it/projects/multimodule/multimodule-filteredFileSet/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/multimodule/multimodule-filteredFileSet/src/assemble/bin.xml b/src/it/projects/multimodule/multimodule-filteredFileSet/src/assemble/bin.xml
index 0d7f09a..8e245fb 100644
--- a/src/it/projects/multimodule/multimodule-filteredFileSet/src/assemble/bin.xml
+++ b/src/it/projects/multimodule/multimodule-filteredFileSet/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/multimodule/multimodule-filteredFileSet/verify.bsh b/src/it/projects/multimodule/multimodule-filteredFileSet/verify.bsh
index bccb5b0..89a3219 100644
--- a/src/it/projects/multimodule/multimodule-filteredFileSet/verify.bsh
+++ b/src/it/projects/multimodule/multimodule-filteredFileSet/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 try
diff --git a/src/it/projects/multimodule/multimodule-modulePomPropInterp/child1/pom.xml b/src/it/projects/multimodule/multimodule-modulePomPropInterp/child1/pom.xml
index dac7566..ee7257e 100644
--- a/src/it/projects/multimodule/multimodule-modulePomPropInterp/child1/pom.xml
+++ b/src/it/projects/multimodule/multimodule-modulePomPropInterp/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?>
+
+<!--
+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>
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -11,4 +31,4 @@
   <properties>
     <foo>bar</foo>
   </properties>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/multimodule-modulePomPropInterp/child2/pom.xml b/src/it/projects/multimodule/multimodule-modulePomPropInterp/child2/pom.xml
index 069d38a..0d799e1 100644
--- a/src/it/projects/multimodule/multimodule-modulePomPropInterp/child2/pom.xml
+++ b/src/it/projects/multimodule/multimodule-modulePomPropInterp/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version='1.0'?>
+
+<!--
+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>
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/multimodule/multimodule-modulePomPropInterp/child2/src/assemble/bin.xml b/src/it/projects/multimodule/multimodule-modulePomPropInterp/child2/src/assemble/bin.xml
index 364f67d..905f2da 100644
--- a/src/it/projects/multimodule/multimodule-modulePomPropInterp/child2/src/assemble/bin.xml
+++ b/src/it/projects/multimodule/multimodule-modulePomPropInterp/child2/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
@@ -23,4 +43,4 @@
       </binaries>
     </moduleSet>
   </moduleSets>
-</assembly>
\ No newline at end of file
+</assembly>
diff --git a/src/it/projects/multimodule/multimodule-modulePomPropInterp/pom.xml b/src/it/projects/multimodule/multimodule-modulePomPropInterp/pom.xml
index c51b25d..bbad5ca 100644
--- a/src/it/projects/multimodule/multimodule-modulePomPropInterp/pom.xml
+++ b/src/it/projects/multimodule/multimodule-modulePomPropInterp/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
@@ -16,4 +36,4 @@
     <module>child1</module>
     <module>child2</module>
   </modules>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/multimodule-modulePomPropInterp/verify.bsh b/src/it/projects/multimodule/multimodule-modulePomPropInterp/verify.bsh
index cf51b30..a845244 100644
--- a/src/it/projects/multimodule/multimodule-modulePomPropInterp/verify.bsh
+++ b/src/it/projects/multimodule/multimodule-modulePomPropInterp/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File f = new File( basedir, "child2/target/child2-1-bin/bar/child1" );
diff --git a/src/it/projects/multimodule/multimodule-siblingParent/child1/pom.xml b/src/it/projects/multimodule/multimodule-siblingParent/child1/pom.xml
index c3afcfd..509966b 100644
--- a/src/it/projects/multimodule/multimodule-siblingParent/child1/pom.xml
+++ b/src/it/projects/multimodule/multimodule-siblingParent/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>test</groupId>
@@ -16,4 +36,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/multimodule-siblingParent/child1/src/main/java/org/test/App.java b/src/it/projects/multimodule/multimodule-siblingParent/child1/src/main/java/org/test/App.java
index 0b3975d..5120975 100644
--- a/src/it/projects/multimodule/multimodule-siblingParent/child1/src/main/java/org/test/App.java
+++ b/src/it/projects/multimodule/multimodule-siblingParent/child1/src/main/java/org/test/App.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/multimodule-siblingParent/child1/src/test/java/org/test/AppTest.java b/src/it/projects/multimodule/multimodule-siblingParent/child1/src/test/java/org/test/AppTest.java
index b84ebc6..35ee617 100644
--- a/src/it/projects/multimodule/multimodule-siblingParent/child1/src/test/java/org/test/AppTest.java
+++ b/src/it/projects/multimodule/multimodule-siblingParent/child1/src/test/java/org/test/AppTest.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/multimodule-siblingParent/child2/pom.xml b/src/it/projects/multimodule/multimodule-siblingParent/child2/pom.xml
index 6a5dff0..2684487 100644
--- a/src/it/projects/multimodule/multimodule-siblingParent/child2/pom.xml
+++ b/src/it/projects/multimodule/multimodule-siblingParent/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>test</groupId>
@@ -16,4 +36,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/multimodule-siblingParent/child2/src/main/java/org/test/App.java b/src/it/projects/multimodule/multimodule-siblingParent/child2/src/main/java/org/test/App.java
index 0b3975d..5120975 100644
--- a/src/it/projects/multimodule/multimodule-siblingParent/child2/src/main/java/org/test/App.java
+++ b/src/it/projects/multimodule/multimodule-siblingParent/child2/src/main/java/org/test/App.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/multimodule-siblingParent/child2/src/test/java/org/test/AppTest.java b/src/it/projects/multimodule/multimodule-siblingParent/child2/src/test/java/org/test/AppTest.java
index b84ebc6..35ee617 100644
--- a/src/it/projects/multimodule/multimodule-siblingParent/child2/src/test/java/org/test/AppTest.java
+++ b/src/it/projects/multimodule/multimodule-siblingParent/child2/src/test/java/org/test/AppTest.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/multimodule-siblingParent/parent/pom.xml b/src/it/projects/multimodule/multimodule-siblingParent/parent/pom.xml
index b464344..8369b76 100644
--- a/src/it/projects/multimodule/multimodule-siblingParent/parent/pom.xml
+++ b/src/it/projects/multimodule/multimodule-siblingParent/parent/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <groupId>org.apache.maven.plugin.assembly.test</groupId>
     <artifactId>it-project-parent</artifactId>
@@ -40,4 +60,4 @@
       </plugin>
     </plugins>
   </build>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/multimodule-siblingParent/parent/src/assemble/src.xml b/src/it/projects/multimodule/multimodule-siblingParent/parent/src/assemble/src.xml
index b516352..b98a195 100644
--- a/src/it/projects/multimodule/multimodule-siblingParent/parent/src/assemble/src.xml
+++ b/src/it/projects/multimodule/multimodule-siblingParent/parent/src/assemble/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/multimodule/multimodule-siblingParent/parent/verify.bsh b/src/it/projects/multimodule/multimodule-siblingParent/parent/verify.bsh
index 8270c70..1a8ac93 100644
--- a/src/it/projects/multimodule/multimodule-siblingParent/parent/verify.bsh
+++ b/src/it/projects/multimodule/multimodule-siblingParent/parent/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child1/pom.xml b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child1/pom.xml
index 19fb2bf..30048c9 100644
--- a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child1/pom.xml
+++ b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>org.test</groupId>
@@ -17,4 +37,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child1/src/main/java/org/test/App.java b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child1/src/main/java/org/test/App.java
index 0b3975d..5120975 100644
--- a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child1/src/main/java/org/test/App.java
+++ b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child1/src/main/java/org/test/App.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child1/src/test/java/org/test/AppTest.java b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child1/src/test/java/org/test/AppTest.java
index b84ebc6..35ee617 100644
--- a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child1/src/test/java/org/test/AppTest.java
+++ b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child1/src/test/java/org/test/AppTest.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child2/pom.xml b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child2/pom.xml
index ddaf833..31463e0 100644
--- a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child2/pom.xml
+++ b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>org.test</groupId>
@@ -17,4 +37,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child2/src/main/java/org/test/App.java b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child2/src/main/java/org/test/App.java
index 0b3975d..5120975 100644
--- a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child2/src/main/java/org/test/App.java
+++ b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child2/src/main/java/org/test/App.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child2/src/test/java/org/test/AppTest.java b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child2/src/test/java/org/test/AppTest.java
index b84ebc6..35ee617 100644
--- a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child2/src/test/java/org/test/AppTest.java
+++ b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child2/src/test/java/org/test/AppTest.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child3/pom.xml b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child3/pom.xml
index c9fe3f2..3c32af1 100644
--- a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child3/pom.xml
+++ b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child3/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>org.test</groupId>
@@ -17,4 +37,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child3/src/main/java/org/test/App.java b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child3/src/main/java/org/test/App.java
index 0b3975d..5120975 100644
--- a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child3/src/main/java/org/test/App.java
+++ b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child3/src/main/java/org/test/App.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child3/src/test/java/org/test/AppTest.java b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child3/src/test/java/org/test/AppTest.java
index b84ebc6..35ee617 100644
--- a/src/it/projects/multimodule/multimodule-sourceNotBinaries/child3/src/test/java/org/test/AppTest.java
+++ b/src/it/projects/multimodule/multimodule-sourceNotBinaries/child3/src/test/java/org/test/AppTest.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/multimodule-sourceNotBinaries/pom.xml b/src/it/projects/multimodule/multimodule-sourceNotBinaries/pom.xml
index b6216b1..6448346 100644
--- a/src/it/projects/multimodule/multimodule-sourceNotBinaries/pom.xml
+++ b/src/it/projects/multimodule/multimodule-sourceNotBinaries/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/multimodule/multimodule-sourceNotBinaries/src/assemble/src.xml b/src/it/projects/multimodule/multimodule-sourceNotBinaries/src/assemble/src.xml
index fb6782b..c1a5e18 100644
--- a/src/it/projects/multimodule/multimodule-sourceNotBinaries/src/assemble/src.xml
+++ b/src/it/projects/multimodule/multimodule-sourceNotBinaries/src/assemble/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/multimodule/multimodule-sourceNotBinaries/verify.bsh b/src/it/projects/multimodule/multimodule-sourceNotBinaries/verify.bsh
index 4944587..2ee5ee0 100644
--- a/src/it/projects/multimodule/multimodule-sourceNotBinaries/verify.bsh
+++ b/src/it/projects/multimodule/multimodule-sourceNotBinaries/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child1/pom.xml b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child1/pom.xml
index 19fb2bf..30048c9 100644
--- a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child1/pom.xml
+++ b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>org.test</groupId>
@@ -17,4 +37,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child1/src/main/java/org/test/App.java b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child1/src/main/java/org/test/App.java
index 0b3975d..5120975 100644
--- a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child1/src/main/java/org/test/App.java
+++ b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child1/src/main/java/org/test/App.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child1/src/test/java/org/test/AppTest.java b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child1/src/test/java/org/test/AppTest.java
index b84ebc6..35ee617 100644
--- a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child1/src/test/java/org/test/AppTest.java
+++ b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child1/src/test/java/org/test/AppTest.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child2/pom.xml b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child2/pom.xml
index ddaf833..31463e0 100644
--- a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child2/pom.xml
+++ b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child2/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>org.test</groupId>
@@ -17,4 +37,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child2/src/main/java/org/test/App.java b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child2/src/main/java/org/test/App.java
index 0b3975d..5120975 100644
--- a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child2/src/main/java/org/test/App.java
+++ b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child2/src/main/java/org/test/App.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child2/src/test/java/org/test/AppTest.java b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child2/src/test/java/org/test/AppTest.java
index b84ebc6..35ee617 100644
--- a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child2/src/test/java/org/test/AppTest.java
+++ b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child2/src/test/java/org/test/AppTest.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child3/pom.xml b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child3/pom.xml
index c9fe3f2..3c32af1 100644
--- a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child3/pom.xml
+++ b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child3/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>org.test</groupId>
@@ -17,4 +37,4 @@
       <scope>test</scope>
     </dependency>
   </dependencies>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child3/src/main/java/org/test/App.java b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child3/src/main/java/org/test/App.java
index 0b3975d..5120975 100644
--- a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child3/src/main/java/org/test/App.java
+++ b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child3/src/main/java/org/test/App.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child3/src/test/java/org/test/AppTest.java b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child3/src/test/java/org/test/AppTest.java
index b84ebc6..35ee617 100644
--- a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child3/src/test/java/org/test/AppTest.java
+++ b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child3/src/test/java/org/test/AppTest.java
@@ -1,5 +1,25 @@
 package org.test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child4/pom.xml b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child4/pom.xml
index e123b46..7117316 100644
--- a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child4/pom.xml
+++ b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child4/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>parent</artifactId>
     <groupId>org.test</groupId>
@@ -50,4 +70,4 @@
       </plugin>
     </plugins>
   </build>
-</project>
\ No newline at end of file
+</project>
diff --git a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child4/src/assemble/bin.xml b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child4/src/assemble/bin.xml
index a5cdd77..7b2c2d6 100644
--- a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child4/src/assemble/bin.xml
+++ b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/child4/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
diff --git a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/pom.xml b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/pom.xml
index 56ace80..e2955e2 100644
--- a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/pom.xml
+++ b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/verify.bsh b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/verify.bsh
index cfc46ac..a8dd3cc 100644
--- a/src/it/projects/multimodule/multimodule-wholeReactorFromChild/verify.bsh
+++ b/src/it/projects/multimodule/multimodule-wholeReactorFromChild/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/pom.xml b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/pom.xml
index cea380d..fc9ab38 100644
--- a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/pom.xml
+++ b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <groupId>test</groupId>
     <artifactId>two-level-multimodule</artifactId>
diff --git a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/main/java/test/App.java b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/main/java/test/App.java
+++ b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/test/java/test/AppTest.java b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/test/java/test/AppTest.java
+++ b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/pom.xml b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/pom.xml
index 18a0d36..fdcc922 100644
--- a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/pom.xml
+++ b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>child-level1-project2</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/main/java/test/App.java b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/main/java/test/App.java
+++ b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java
+++ b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/pom.xml b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/pom.xml
index e89ce6f..068aa96 100644
--- a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/pom.xml
+++ b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/pom.xml
@@ -1,4 +1,24 @@
 <?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>
   <parent>
     <groupId>test</groupId>
diff --git a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/pom.xml b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/pom.xml
index 1b27a20..7b389a0 100644
--- a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/pom.xml
+++ b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/src/assemble/bin.xml b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/src/assemble/bin.xml
index 2ad6b7a..cff7e87 100644
--- a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/src/assemble/bin.xml
+++ b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
diff --git a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/verify.bsh b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/verify.bsh
index 63c0177..505c36f 100644
--- a/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/verify.bsh
+++ b/src/it/projects/multimodule/two-level-multimodule-dontIncludeSubModules/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/multimodule/two-level-multimodule/child-level1-project1/pom.xml b/src/it/projects/multimodule/two-level-multimodule/child-level1-project1/pom.xml
index cea380d..fc9ab38 100644
--- a/src/it/projects/multimodule/two-level-multimodule/child-level1-project1/pom.xml
+++ b/src/it/projects/multimodule/two-level-multimodule/child-level1-project1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <groupId>test</groupId>
     <artifactId>two-level-multimodule</artifactId>
diff --git a/src/it/projects/multimodule/two-level-multimodule/child-level1-project1/src/main/java/test/App.java b/src/it/projects/multimodule/two-level-multimodule/child-level1-project1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/multimodule/two-level-multimodule/child-level1-project1/src/main/java/test/App.java
+++ b/src/it/projects/multimodule/two-level-multimodule/child-level1-project1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/two-level-multimodule/child-level1-project1/src/test/java/test/AppTest.java b/src/it/projects/multimodule/two-level-multimodule/child-level1-project1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/multimodule/two-level-multimodule/child-level1-project1/src/test/java/test/AppTest.java
+++ b/src/it/projects/multimodule/two-level-multimodule/child-level1-project1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/child-level2-project1/pom.xml b/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/child-level2-project1/pom.xml
index 18a0d36..fdcc922 100644
--- a/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/child-level2-project1/pom.xml
+++ b/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/child-level2-project1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>child-level1-project2</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/child-level2-project1/src/main/java/test/App.java b/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/child-level2-project1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/child-level2-project1/src/main/java/test/App.java
+++ b/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/child-level2-project1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java b/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java
+++ b/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/pom.xml b/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/pom.xml
index e89ce6f..068aa96 100644
--- a/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/pom.xml
+++ b/src/it/projects/multimodule/two-level-multimodule/child-level1-project2/pom.xml
@@ -1,4 +1,24 @@
 <?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>
   <parent>
     <groupId>test</groupId>
diff --git a/src/it/projects/multimodule/two-level-multimodule/pom.xml b/src/it/projects/multimodule/two-level-multimodule/pom.xml
index 1b27a20..7b389a0 100644
--- a/src/it/projects/multimodule/two-level-multimodule/pom.xml
+++ b/src/it/projects/multimodule/two-level-multimodule/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/multimodule/two-level-multimodule/src/assemble/bin.xml b/src/it/projects/multimodule/two-level-multimodule/src/assemble/bin.xml
index c42e8ce..aa7f1a7 100644
--- a/src/it/projects/multimodule/two-level-multimodule/src/assemble/bin.xml
+++ b/src/it/projects/multimodule/two-level-multimodule/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
diff --git a/src/it/projects/multimodule/two-level-multimodule/verify.bsh b/src/it/projects/multimodule/two-level-multimodule/verify.bsh
index 63b3268..221ec12 100644
--- a/src/it/projects/multimodule/two-level-multimodule/verify.bsh
+++ b/src/it/projects/multimodule/two-level-multimodule/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project1/pom.xml b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project1/pom.xml
index 73e8cfa..abed4e6 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project1/pom.xml
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <groupId>test</groupId>
     <artifactId>two-levels-includeBaseDir-withBin</artifactId>
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project1/src/main/java/test/App.java b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project1/src/main/java/test/App.java
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project1/src/test/java/test/AppTest.java b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project1/src/test/java/test/AppTest.java
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/child-level2-project1/pom.xml b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/child-level2-project1/pom.xml
index 18a0d36..fdcc922 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/child-level2-project1/pom.xml
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/child-level2-project1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>child-level1-project2</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/child-level2-project1/src/main/java/test/App.java b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/child-level2-project1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/child-level2-project1/src/main/java/test/App.java
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/child-level2-project1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/pom.xml b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/pom.xml
index 0b84025..40f618e 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/pom.xml
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/child-level1-project2/pom.xml
@@ -1,4 +1,24 @@
 <?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>
   <parent>
     <groupId>test</groupId>
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/pom.xml b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/pom.xml
index eafc395..ecc836c 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/pom.xml
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/src/assemble/bin.xml b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/src/assemble/bin.xml
index d4c2060..bb3fedb 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/src/assemble/bin.xml
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/verify.bsh b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/verify.bsh
index f75a4c5..4debfb2 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/verify.bsh
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withBin/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 boolean result = true;
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project1/pom.xml b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project1/pom.xml
index 044f9fe..1eff5c8 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project1/pom.xml
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <groupId>test</groupId>
     <artifactId>two-levels-includeBaseDir-withSrc</artifactId>
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project1/src/main/java/test/App.java b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project1/src/main/java/test/App.java
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project1/src/test/java/test/AppTest.java b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project1/src/test/java/test/AppTest.java
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/child-level2-project1/pom.xml b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/child-level2-project1/pom.xml
index 18a0d36..fdcc922 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/child-level2-project1/pom.xml
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/child-level2-project1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>child-level1-project2</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/child-level2-project1/src/main/java/test/App.java b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/child-level2-project1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/child-level2-project1/src/main/java/test/App.java
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/child-level2-project1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/pom.xml b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/pom.xml
index 51d0767..3d622ef 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/pom.xml
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/child-level1-project2/pom.xml
@@ -1,4 +1,24 @@
 <?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>
   <parent>
     <groupId>test</groupId>
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/pom.xml b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/pom.xml
index cd27113..402ea4e 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/pom.xml
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/src/assemble/src.xml b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/src/assemble/src.xml
index ce085ca..5528b69 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/src/assemble/src.xml
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/src/assemble/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
diff --git a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/verify.bsh b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/verify.bsh
index 9baba05..abae3a6 100644
--- a/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/verify.bsh
+++ b/src/it/projects/multimodule/two-levels-includeBaseDir-withSrc/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project1/pom.xml b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project1/pom.xml
index cea380d..fc9ab38 100644
--- a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project1/pom.xml
+++ b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <groupId>test</groupId>
     <artifactId>two-level-multimodule</artifactId>
diff --git a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project1/src/main/java/test/App.java b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project1/src/main/java/test/App.java
+++ b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project1/src/test/java/test/AppTest.java b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project1/src/test/java/test/AppTest.java
+++ b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/child-level2-project1/pom.xml b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/child-level2-project1/pom.xml
index 18a0d36..fdcc922 100644
--- a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/child-level2-project1/pom.xml
+++ b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/child-level2-project1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>child-level1-project2</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/child-level2-project1/src/main/java/test/App2.java b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/child-level2-project1/src/main/java/test/App2.java
index 224dea9..6cdfeb5 100644
--- a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/child-level2-project1/src/main/java/test/App2.java
+++ b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/child-level2-project1/src/main/java/test/App2.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/child-level2-project1/src/test/java/test/App2Test.java b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/child-level2-project1/src/test/java/test/App2Test.java
index 0b02828..1e1b27b 100644
--- a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/child-level2-project1/src/test/java/test/App2Test.java
+++ b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/child-level2-project1/src/test/java/test/App2Test.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/pom.xml b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/pom.xml
index e89ce6f..068aa96 100644
--- a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/pom.xml
+++ b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/child-level1-project2/pom.xml
@@ -1,4 +1,24 @@
 <?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>
   <parent>
     <groupId>test</groupId>
diff --git a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/pom.xml b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/pom.xml
index ef34c2d..bb28558 100644
--- a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/pom.xml
+++ b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/src/main/assembly/src.xml b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/src/main/assembly/src.xml
index 46151d4..a5bdfe5 100644
--- a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/src/main/assembly/src.xml
+++ b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/verify.bsh b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/verify.bsh
index 93e95e9..3a5ced7 100644
--- a/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/verify.bsh
+++ b/src/it/projects/multimodule/twoLevel-dontIncludeSubModules-artifactIdExprOutDir/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project1/pom.xml b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project1/pom.xml
index cea380d..fc9ab38 100644
--- a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project1/pom.xml
+++ b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <groupId>test</groupId>
     <artifactId>two-level-multimodule</artifactId>
diff --git a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project1/src/main/java/test/App.java b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project1/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project1/src/main/java/test/App.java
+++ b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project1/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project1/src/test/java/test/AppTest.java b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project1/src/test/java/test/AppTest.java
index e6046e5..d5c1205 100644
--- a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project1/src/test/java/test/AppTest.java
+++ b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project1/src/test/java/test/AppTest.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/child-level2-project1/pom.xml b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/child-level2-project1/pom.xml
index 18a0d36..fdcc922 100644
--- a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/child-level2-project1/pom.xml
+++ b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/child-level2-project1/pom.xml
@@ -1,4 +1,24 @@
 <?xml version="1.0"?><project>
+
+<!--
+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.
+-->
+
   <parent>
     <artifactId>child-level1-project2</artifactId>
     <groupId>test</groupId>
diff --git a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/child-level2-project1/src/main/java/test/App2.java b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/child-level2-project1/src/main/java/test/App2.java
index 224dea9..6cdfeb5 100644
--- a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/child-level2-project1/src/main/java/test/App2.java
+++ b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/child-level2-project1/src/main/java/test/App2.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/child-level2-project1/src/test/java/test/App2Test.java b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/child-level2-project1/src/test/java/test/App2Test.java
index 0b02828..1e1b27b 100644
--- a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/child-level2-project1/src/test/java/test/App2Test.java
+++ b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/child-level2-project1/src/test/java/test/App2Test.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/pom.xml b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/pom.xml
index e89ce6f..068aa96 100644
--- a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/pom.xml
+++ b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/child-level1-project2/pom.xml
@@ -1,4 +1,24 @@
 <?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>
   <parent>
     <groupId>test</groupId>
diff --git a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/pom.xml b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/pom.xml
index ef34c2d..bb28558 100644
--- a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/pom.xml
+++ b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/src/main/assembly/src.xml b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/src/main/assembly/src.xml
index e7e228f..0cf029b 100644
--- a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/src/main/assembly/src.xml
+++ b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/src/main/assembly/src.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/verify.bsh b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/verify.bsh
index 7096f89..b256f9d 100644
--- a/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/verify.bsh
+++ b/src/it/projects/multimodule/twoLevel-includeSubModules-excludeSubModuleSourceDirs/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 import java.net.*;
 import java.util.jar.*;
diff --git a/src/it/projects/repositories/basic-repository/pom.xml b/src/it/projects/repositories/basic-repository/pom.xml
index 463096e..a20dbd7 100644
--- a/src/it/projects/repositories/basic-repository/pom.xml
+++ b/src/it/projects/repositories/basic-repository/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/repositories/basic-repository/src/assemble/bin.xml b/src/it/projects/repositories/basic-repository/src/assemble/bin.xml
index 559f8e8..33fe72d 100644
--- a/src/it/projects/repositories/basic-repository/src/assemble/bin.xml
+++ b/src/it/projects/repositories/basic-repository/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/repositories/basic-repository/src/main/java/org/apache/maven/plugin/assembly/test/App.java b/src/it/projects/repositories/basic-repository/src/main/java/org/apache/maven/plugin/assembly/test/App.java
index 4fa5eb2..3b568c3 100644
--- a/src/it/projects/repositories/basic-repository/src/main/java/org/apache/maven/plugin/assembly/test/App.java
+++ b/src/it/projects/repositories/basic-repository/src/main/java/org/apache/maven/plugin/assembly/test/App.java
@@ -1,5 +1,25 @@
 package org.apache.maven.plugin.assembly.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/repositories/basic-repository/src/test/java/org/apache/maven/plugin/assembly/test/AppTest.java b/src/it/projects/repositories/basic-repository/src/test/java/org/apache/maven/plugin/assembly/test/AppTest.java
index 4483db7..2178c35 100644
--- a/src/it/projects/repositories/basic-repository/src/test/java/org/apache/maven/plugin/assembly/test/AppTest.java
+++ b/src/it/projects/repositories/basic-repository/src/test/java/org/apache/maven/plugin/assembly/test/AppTest.java
@@ -1,5 +1,25 @@
 package org.apache.maven.plugin.assembly.test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/repositories/basic-repository/verify.bsh b/src/it/projects/repositories/basic-repository/verify.bsh
index 0ac3bc0..ba85131 100644
--- a/src/it/projects/repositories/basic-repository/verify.bsh
+++ b/src/it/projects/repositories/basic-repository/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File junitJar = new File( basedir, "target/assembly-bin/repo/junit/junit/3.8.1/junit-3.8.1.jar" );
diff --git a/src/it/projects/repositories/massembly-196/pom.xml b/src/it/projects/repositories/massembly-196/pom.xml
index 721e720..4283dee 100644
--- a/src/it/projects/repositories/massembly-196/pom.xml
+++ b/src/it/projects/repositories/massembly-196/pom.xml
@@ -1,4 +1,24 @@
 <?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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/src/it/projects/repositories/massembly-196/src/main/assembly/bin.xml b/src/it/projects/repositories/massembly-196/src/main/assembly/bin.xml
index c223c56..bee9748 100644
--- a/src/it/projects/repositories/massembly-196/src/main/assembly/bin.xml
+++ b/src/it/projects/repositories/massembly-196/src/main/assembly/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/repositories/massembly-196/src/main/java/test/App.java b/src/it/projects/repositories/massembly-196/src/main/java/test/App.java
index b8e9695..d0442f3 100644
--- a/src/it/projects/repositories/massembly-196/src/main/java/test/App.java
+++ b/src/it/projects/repositories/massembly-196/src/main/java/test/App.java
@@ -1,5 +1,25 @@
 package test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/repositories/massembly-196/verify.bsh b/src/it/projects/repositories/massembly-196/verify.bsh
index 279bc7c..f1777fc 100644
--- a/src/it/projects/repositories/massembly-196/verify.bsh
+++ b/src/it/projects/repositories/massembly-196/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.File;
 
 File jarPlugin = new File( basedir, "target/massembly-196-1-bin/repo/org/apache/maven/plugins/maven-jar-plugin/2.0/maven-jar-plugin-2.0.jar" );
diff --git a/src/it/projects/repositories/repo-with-snapshot-parents/child/pom.xml b/src/it/projects/repositories/repo-with-snapshot-parents/child/pom.xml
index 4d552f2..24582e7 100644
--- a/src/it/projects/repositories/repo-with-snapshot-parents/child/pom.xml
+++ b/src/it/projects/repositories/repo-with-snapshot-parents/child/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/repositories/repo-with-snapshot-parents/child/src/assemble/bin.xml b/src/it/projects/repositories/repo-with-snapshot-parents/child/src/assemble/bin.xml
index 559f8e8..33fe72d 100644
--- a/src/it/projects/repositories/repo-with-snapshot-parents/child/src/assemble/bin.xml
+++ b/src/it/projects/repositories/repo-with-snapshot-parents/child/src/assemble/bin.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+
 <assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
diff --git a/src/it/projects/repositories/repo-with-snapshot-parents/child/src/main/java/org/apache/maven/plugin/assembly/test/App.java b/src/it/projects/repositories/repo-with-snapshot-parents/child/src/main/java/org/apache/maven/plugin/assembly/test/App.java
index 4fa5eb2..3b568c3 100644
--- a/src/it/projects/repositories/repo-with-snapshot-parents/child/src/main/java/org/apache/maven/plugin/assembly/test/App.java
+++ b/src/it/projects/repositories/repo-with-snapshot-parents/child/src/main/java/org/apache/maven/plugin/assembly/test/App.java
@@ -1,5 +1,25 @@
 package org.apache.maven.plugin.assembly.test;
 
+/*
+ * 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.
+ */
+
+
 /**
  * Hello world!
  *
diff --git a/src/it/projects/repositories/repo-with-snapshot-parents/child/src/test/java/org/apache/maven/plugin/assembly/test/AppTest.java b/src/it/projects/repositories/repo-with-snapshot-parents/child/src/test/java/org/apache/maven/plugin/assembly/test/AppTest.java
index 4483db7..2178c35 100644
--- a/src/it/projects/repositories/repo-with-snapshot-parents/child/src/test/java/org/apache/maven/plugin/assembly/test/AppTest.java
+++ b/src/it/projects/repositories/repo-with-snapshot-parents/child/src/test/java/org/apache/maven/plugin/assembly/test/AppTest.java
@@ -1,5 +1,25 @@
 package org.apache.maven.plugin.assembly.test;
 
+/*
+ * 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.
+ */
+
+
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
diff --git a/src/it/projects/repositories/repo-with-snapshot-parents/pom.xml b/src/it/projects/repositories/repo-with-snapshot-parents/pom.xml
index 7808e1e..b71afea 100644
--- a/src/it/projects/repositories/repo-with-snapshot-parents/pom.xml
+++ b/src/it/projects/repositories/repo-with-snapshot-parents/pom.xml
@@ -1,3 +1,23 @@
+<?xml version='1.0'?>
+<!--
+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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
diff --git a/src/it/projects/repositories/repo-with-snapshot-parents/verify.bsh b/src/it/projects/repositories/repo-with-snapshot-parents/verify.bsh
index d5559e6..f078118 100644
--- a/src/it/projects/repositories/repo-with-snapshot-parents/verify.bsh
+++ b/src/it/projects/repositories/repo-with-snapshot-parents/verify.bsh
@@ -1,3 +1,22 @@
+/*
+ * 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.
+ */
+
 import java.io.*;
 
 File junitJar = new File( basedir, "child/target/assembly-bin/repo/junit/junit/3.8.1/junit-3.8.1.jar" );
diff --git a/src/main/java/org/apache/maven/plugin/assembly/AssemblerConfigurationSource.java b/src/main/java/org/apache/maven/plugin/assembly/AssemblerConfigurationSource.java
index 57d96e4..4961218 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/AssemblerConfigurationSource.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/AssemblerConfigurationSource.java
@@ -24,6 +24,7 @@
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.shared.filtering.MavenFileFilter;
+import org.apache.maven.shared.filtering.MavenReaderFilter;
 
 import java.io.File;
 import java.util.List;
@@ -34,69 +35,184 @@
 public interface AssemblerConfigurationSource
 {
 
+    /**
+     * @return The descriptor.
+     */
     String getDescriptor();
 
+    /**
+     * @return The descriptor id.
+     */
     String getDescriptorId();
 
+    /**
+     * @return The descriptors.
+     */
     String[] getDescriptors();
 
+    /**
+     * @return The descriptor references.
+     */
     String[] getDescriptorReferences();
 
+    /**
+     * @return The descriptor source direcotoy.
+     */
     File getDescriptorSourceDirectory();
 
+    /**
+     * @return The base directory.
+     */
     File getBasedir();
 
+    /**
+     * @return The Maven Project.
+     */
     MavenProject getProject();
 
+    /**
+     * @return Site included.
+     */
     boolean isSiteIncluded();
 
+    /**
+     * @return The site directory.
+     */
     File getSiteDirectory();
 
+    /**
+     * @return The final name.
+     */
     String getFinalName();
 
+    /**
+     * @return append the assembly id.
+     */
     boolean isAssemblyIdAppended();
 
+    /**
+     * @return The classifier.
+     */
     String getClassifier();
 
+    /**
+     * @return Tar long file mode.
+     */
     String getTarLongFileMode();
 
+    /**
+     * @return The output directory.
+     */
     File getOutputDirectory();
 
+    /**
+     * @return The working direcotory.
+     */
     File getWorkingDirectory();
 
+    /**
+     * @return the jar archive configuration.
+     */
     MavenArchiveConfiguration getJarArchiveConfiguration();
 
+    /**
+     * @return The local repository.
+     */
     ArtifactRepository getLocalRepository();
 
+    /**
+     * @return The temporary root directory.
+     */
     File getTemporaryRootDirectory();
 
+    /**
+     * @return The archive base directory.
+     */
     File getArchiveBaseDirectory();
 
+    /**
+     * @return The filters.
+     */
     List<String> getFilters();
 
+    /**
+     * @return include the project build filters or not.
+     */
+    boolean isIncludeProjectBuildFilters();
+
+    /**
+     * @return The list of reactor projects.
+     */
     List<MavenProject> getReactorProjects();
 
+    /**
+     * @return The remote repositories.
+     */
     List<ArtifactRepository> getRemoteRepositories();
 
+    /**
+     * @return Is this a test run.
+     */
     boolean isDryRun();
 
+    /**
+     * @return Ignore directory format extensions.
+     */
     boolean isIgnoreDirFormatExtensions();
 
+    /**
+     * @return Ignore missing descriptor.
+     */
     boolean isIgnoreMissingDescriptor();
 
+    /**
+     * @return The maven session.
+     */
     MavenSession getMavenSession();
 
+    /**
+     * @return The archiver configu.
+     */
     String getArchiverConfig();
 
+    /**
+     * @return The maven file filter.
+     */
     MavenFileFilter getMavenFileFilter();
 
+    /**
+     * Maven shared filtering utility.
+     */
+    MavenReaderFilter getMavenReaderFilter();
+
+    /**
+     * @return Update only yes/no.
+     */
     boolean isUpdateOnly();
 
+    /**
+     * @return Use JVM chmod yes/no.
+     */
     boolean isUseJvmChmod();
 
+    /**
+     * @return Ignore permissions yes/no.
+     */
     boolean isIgnorePermissions();
-    
+
+    /**
+     * @return The current encoding.
+     */
     String getEncoding();
 
+    /**
+     * @return The escape string.
+     */
     String getEscapeString();
+
+    /**
+     * @return The list of delimiters.
+     */
+    List<String> getDelimiters();
+
 }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java b/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java
deleted file mode 100644
index 6465e1f..0000000
--- a/src/main/java/org/apache/maven/plugin/assembly/DefaultAssemblyContext.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package org.apache.maven.plugin.assembly;
-
-/*
- * 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.
- */
-
-import org.apache.maven.artifact.Artifact;
-
-import java.util.Set;
-
-public class DefaultAssemblyContext
-    implements AssemblyContext
-{
-
-    private Set<Artifact> artifacts;
-
-    /**
-     * {@inheritDoc}
-     * 
-     * @see org.apache.maven.plugin.assembly.AssemblyContext#setResolvedArtifacts(java.util.Set)
-     */
-    public void setResolvedArtifacts( final Set<Artifact> artifacts )
-    {
-        this.artifacts = artifacts;
-    }
-
-    /**
-     * {@inheritDoc}
-     * 
-     * @see org.apache.maven.plugin.assembly.AssemblyContext#getResolvedArtifacts()
-     */
-    public Set<Artifact> getResolvedArtifacts()
-    {
-        return artifacts;
-    }
-
-}
diff --git a/src/main/java/org/apache/maven/plugin/assembly/InvalidAssemblerConfigurationException.java b/src/main/java/org/apache/maven/plugin/assembly/InvalidAssemblerConfigurationException.java
index f1c4542..cd3c59d 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/InvalidAssemblerConfigurationException.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/InvalidAssemblerConfigurationException.java
@@ -28,11 +28,18 @@
 
     private static final long serialVersionUID = 1L;
 
+    /**
+     * @param message The message.
+     * @param error The error
+     */
     public InvalidAssemblerConfigurationException( final String message, final Throwable error )
     {
         super( message, error );
     }
 
+    /**
+     * @param message The message.
+     */
     public InvalidAssemblerConfigurationException( final String message )
     {
         super( message );
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveCreationException.java b/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveCreationException.java
index d3ee894..261c006 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveCreationException.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveCreationException.java
@@ -28,11 +28,19 @@
 
     private static final long serialVersionUID = 1L;
 
+    /**
+     * Create in instance.
+     * @param message The message to use.
+     * @param error The error.
+     */
     public ArchiveCreationException( final String message, final Throwable error )
     {
         super( message, error );
     }
 
+    /**
+     * @param message The message.
+     */
     public ArchiveCreationException( final String message )
     {
         super( message );
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveExpansionException.java b/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveExpansionException.java
index 970f04d..2122b8c 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveExpansionException.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/ArchiveExpansionException.java
@@ -28,11 +28,18 @@
 
     private static final long serialVersionUID = 1L;
 
+    /**
+     * @param message The message to use for this instance.
+     * @param error The error which has been thrown.
+     */
     public ArchiveExpansionException( final String message, final Throwable error )
     {
         super( message, error );
     }
 
+    /**
+     * @param message The message.
+     */
     public ArchiveExpansionException( final String message )
     {
         super( message );
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/AssemblyArchiver.java b/src/main/java/org/apache/maven/plugin/assembly/archive/AssemblyArchiver.java
index 3829d8a..6753177 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/AssemblyArchiver.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/AssemblyArchiver.java
@@ -33,6 +33,28 @@
 {
     String ROLE = AssemblyArchiver.class.getName();
 
+    /**
+     * Create the assembly archive. Generally:
+     * <ol>
+     * <li>Setup any directory structures for temporary files</li>
+     * <li>Calculate the output directory/file for the assembly</li>
+     * <li>Setup any handler components for special descriptor files we may encounter</li>
+     * <li>Lookup and configure the {@link org.codehaus.plexus.archiver.Archiver} to be used</li>
+     * <li>Determine what, if any, dependency resolution will be required, and resolve any dependency-version conflicts
+     * up front to produce a managed-version map for the whole assembly process.</li>
+     * <li>Iterate through the available {@link org.apache.maven.plugin.assembly.archive.phase.AssemblyArchiverPhase} instances, executing each to handle a different
+     * top-level section of the assembly descriptor, if that section is present.</li>
+     * </ol>
+     * @param assembly The {@link Assembly}
+     * @param fullName The full name.
+     * @param format The format.
+     * @param configSource The {@link AssemblerConfigurationSource}
+     * @param recompressZippedFiles recompress zipped files.
+     * @return The resulting archive file.
+     * @throws ArchiveCreationException
+     * @throws AssemblyFormattingException
+     * @throws InvalidAssemblerConfigurationException
+     */
     File createArchive( Assembly assembly, String fullName, String format, AssemblerConfigurationSource configSource,
                         boolean recompressZippedFiles )
         throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException;
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java b/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java
index bb06ecb..490c038 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java
@@ -27,11 +27,11 @@
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 
+import org.apache.maven.artifact.Artifact;
 import org.apache.maven.plugin.DebugConfigurationListener;
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
 import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
 import org.apache.maven.plugin.assembly.archive.archiver.AssemblyProxyArchiver;
 import org.apache.maven.plugin.assembly.archive.phase.AssemblyArchiverPhase;
@@ -43,6 +43,9 @@
 import org.apache.maven.plugin.assembly.interpolation.AssemblyExpressionEvaluator;
 import org.apache.maven.plugin.assembly.model.Assembly;
 import org.apache.maven.plugin.assembly.model.ContainerDescriptorHandlerConfig;
+import org.apache.maven.plugin.assembly.model.ModuleSet;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
+import org.apache.maven.plugin.assembly.resolved.ResolvedModuleSet;
 import org.apache.maven.plugin.assembly.utils.AssemblyFileUtils;
 import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
 import org.codehaus.plexus.PlexusConstants;
@@ -104,12 +107,17 @@
 
     private PlexusContainer container;
 
+    @SuppressWarnings( "UnusedDeclaration" )
     public DefaultAssemblyArchiver()
     {
-        // needed for plexus
     }
 
     // introduced for testing.
+    /**
+     * @param archiverManager The archive manager.
+     * @param resolver The {@link DependencyResolver}.
+     * @param assemblyPhases The list of {@link AssemblyArchiverPhase}
+     */
     protected DefaultAssemblyArchiver( final ArchiverManager archiverManager, final DependencyResolver resolver,
                                        final List<AssemblyArchiverPhase> assemblyPhases )
     {
@@ -118,19 +126,7 @@
         this.assemblyPhases = assemblyPhases;
     }
 
-    /**
-     * Create the assembly archive. Generally:
-     * <ol>
-     * <li>Setup any directory structures for temporary files</li>
-     * <li>Calculate the output directory/file for the assembly</li>
-     * <li>Setup any handler components for special descriptor files we may encounter</li>
-     * <li>Lookup and configure the {@link Archiver} to be used</li>
-     * <li>Determine what, if any, dependency resolution will be required, and resolve any dependency-version conflicts
-     * up front to produce a managed-version map for the whole assembly process.</li>
-     * <li>Iterate through the available {@link AssemblyArchiverPhase} instances, executing each to handle a different
-     * top-level section of the assembly descriptor, if that section is present.</li>
-     * </ol>
-     */
+    /** {@inheritDoc} */
     public File createArchive( final Assembly assembly, final String fullName, final String format,
                                final AssemblerConfigurationSource configSource, boolean recompressZippedFiles )
         throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
@@ -172,13 +168,25 @@
 
             archiver.setDestFile( destFile );
 
-            final AssemblyContext context = new DefaultAssemblyContext();
+            List<ResolvedModuleSet> resolvedModuleSets = new ArrayList<ResolvedModuleSet>();
+            for ( ModuleSet moduleSet : assembly.getModuleSets() )
+            {
+                resolvedModuleSets.add( dependencyResolver.resolve( assembly, moduleSet, configSource ) );
+            }
 
-            dependencyResolver.resolve( assembly, configSource, context );
+            // OK, this piece of code contains all the stuff left after I extracted resolvedModuleSets.
+            // this can probably be simplified quite a lot, since the module sets now have their
+            // own artifact resolution.
+            final Set<Artifact> dependencySetArtifacts = dependencyResolver.resolve( assembly, configSource );
+
+            // CHECKSTYLE_OFF: LineLength
+            final ResolvedAssembly resolvedAssembly =
+                ResolvedAssembly.create( assembly ).withResolvedModuleSets( resolvedModuleSets ).withDependencySetArtifacts( dependencySetArtifacts );
+            // CHECKSTYLE_ON: LineLength
 
             for ( AssemblyArchiverPhase phase : assemblyPhases )
             {
-                phase.execute( assembly, archiver, configSource, context );
+                phase.execute( resolvedAssembly, archiver, configSource );
             }
 
             archiver.createArchive();
@@ -216,9 +224,11 @@
         }
     }
 
+    // CHECKSTYLE_OFF: LineLength
     private List<ContainerDescriptorHandler> selectContainerDescriptorHandlers( List<ContainerDescriptorHandlerConfig> requestedContainerDescriptorHandlers,
                                                                                 final AssemblerConfigurationSource configSource )
         throws InvalidAssemblerConfigurationException
+    // CHECKSTYLE_ON: LineLength
     {
         getLogger().debug( "All known ContainerDescriptorHandler components: "
                                + ( containerDescriptorHandlers == null ? "none; map is null." : ""
@@ -232,29 +242,32 @@
         final List<ContainerDescriptorHandler> handlers = new ArrayList<ContainerDescriptorHandler>();
         final List<String> hints = new ArrayList<String>();
 
-        if (!requestedContainerDescriptorHandlers.isEmpty())
+        if ( !requestedContainerDescriptorHandlers.isEmpty() )
         {
-            for (final ContainerDescriptorHandlerConfig config : requestedContainerDescriptorHandlers) {
+            for ( final ContainerDescriptorHandlerConfig config : requestedContainerDescriptorHandlers )
+            {
                 final String hint = config.getHandlerName();
-                final ContainerDescriptorHandler handler = containerDescriptorHandlers.get(hint);
+                final ContainerDescriptorHandler handler = containerDescriptorHandlers.get( hint );
 
-                if (handler == null) {
+                if ( handler == null )
+                {
                     throw new InvalidAssemblerConfigurationException(
-                            "Cannot find ContainerDescriptorHandler with hint: "
-                                    + hint);
+                                                                      "Cannot find ContainerDescriptorHandler with hint: "
+                                                                          + hint );
                 }
 
-                getLogger().debug("Found container descriptor handler with hint: " + hint + " (component: " + handler
-                        + ")");
+                getLogger().debug( "Found container descriptor handler with hint: " + hint + " (component: " + handler
+                                       + ")" );
 
-                if (config.getConfiguration() != null) {
-                    getLogger().debug("Configuring handler with:\n\n" + config.getConfiguration() + "\n\n");
+                if ( config.getConfiguration() != null )
+                {
+                    getLogger().debug( "Configuring handler with:\n\n" + config.getConfiguration() + "\n\n" );
 
-                    configureContainerDescriptorHandler(handler, (Xpp3Dom) config.getConfiguration(), configSource);
+                    configureContainerDescriptorHandler( handler, (Xpp3Dom) config.getConfiguration(), configSource );
                 }
 
-                handlers.add(handler);
-                hints.add(hint);
+                handlers.add( handler );
+                hints.add( hint );
             }
         }
 
@@ -268,13 +281,13 @@
 
     /**
      * Creates the necessary archiver to build the distribution file.
-     * 
+     *
      * @param format Archive format
-     * @param includeBaseDir
-     * @param finalName
-     * @param configSource
-     * @param containerHandlers
-     * @param recompressZippedFiles
+     * @param includeBaseDir the base directory for include.
+     * @param finalName The final name.
+     * @param configSource {@link AssemblerConfigurationSource}
+     * @param containerHandlers The list of {@link ContainerDescriptorHandler}
+     * @param recompressZippedFiles recompress zipped files.
      * @return archiver Archiver generated
      * @throws org.codehaus.plexus.archiver.ArchiverException
      * @throws org.codehaus.plexus.archiver.manager.NoSuchArchiverException
@@ -286,9 +299,9 @@
         throws ArchiverException, NoSuchArchiverException
     {
         Archiver archiver;
-        if ( format.startsWith( "tar" ) )
+        if ( "tgz".equals( format ) || "tbz2".equals( format ) || format.startsWith( "tar" ) )
         {
-            archiver = createTarArchiver( format, configSource.getTarLongFileMode() );
+            archiver = createTarArchiver( format, TarLongFileMode.valueOf( configSource.getTarLongFileMode() ) );
         }
         else if ( "war".equals( format ) )
         {
@@ -424,12 +437,12 @@
         try
         {
             final Method configureComponent =
-                ComponentConfigurator.class.getMethod( "configureComponent", new Class[] { Object.class,
-                    PlexusConfiguration.class, ExpressionEvaluator.class, (Class<?>) containerRealm[1],
-                    ConfigurationListener.class } );
+                ComponentConfigurator.class.getMethod( "configureComponent", Object.class, PlexusConfiguration.class,
+                                                       ExpressionEvaluator.class, (Class<?>) containerRealm[1],
+                                                       ConfigurationListener.class );
 
-            configureComponent.invoke( configurator, component, configuration, expressionEvaluator,
-                    containerRealm[0], listener);
+            configureComponent.invoke( configurator, component, configuration, expressionEvaluator, containerRealm[0],
+                                       listener );
         }
         catch ( final NoSuchMethodException e )
         {
@@ -483,26 +496,24 @@
         return warArchiver;
     }
 
-    protected Archiver createTarArchiver( final String format, final String tarLongFileMode )
+    protected Archiver createTarArchiver( final String format, final TarLongFileMode tarLongFileMode )
         throws NoSuchArchiverException, ArchiverException
     {
         final TarArchiver tarArchiver = (TarArchiver) archiverManager.getArchiver( "tar" );
         final int index = format.indexOf( '.' );
         if ( index >= 0 )
         {
-            // TODO: this needs a cleanup in plexus archiver - use a real
-            // typesafe enum
-            final TarArchiver.TarCompressionMethod tarCompressionMethod = new TarArchiver.TarCompressionMethod();
+            TarArchiver.TarCompressionMethod tarCompressionMethod;
             // TODO: this should accept gz and bz2 as well so we can skip
             // over the switch
             final String compression = format.substring( index + 1 );
             if ( "gz".equals( compression ) )
             {
-                tarCompressionMethod.setValue( "gzip" );
+                tarCompressionMethod = TarArchiver.TarCompressionMethod.gzip;
             }
             else if ( "bz2".equals( compression ) )
             {
-                tarCompressionMethod.setValue( "bzip2" );
+                tarCompressionMethod = TarArchiver.TarCompressionMethod.bzip2;
             }
             else
             {
@@ -511,12 +522,16 @@
             }
             tarArchiver.setCompression( tarCompressionMethod );
         }
+        else if ( "tgz".equals( format ) )
+        {
+            tarArchiver.setCompression( TarArchiver.TarCompressionMethod.gzip );
+        }
+        else if ( "tbz2".equals( format ) )
+        {
+            tarArchiver.setCompression( TarArchiver.TarCompressionMethod.bzip2 );
+        }
 
-        final TarLongFileMode tarFileMode = new TarLongFileMode();
-
-        tarFileMode.setValue( tarLongFileMode );
-
-        tarArchiver.setLongfile( tarFileMode );
+        tarArchiver.setLongfile( tarLongFileMode );
 
         return tarArchiver;
     }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java b/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java
index 78c24bb..ae7496f 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java
@@ -133,10 +133,10 @@
                     return Collections.singletonList( "META-INF/MANIFEST.MF" );
                 }
             }
-            catch ( final ManifestException e )
+            catch ( final ManifestException ignore )
             {
             }
-            catch ( final DependencyResolutionRequiredException e )
+            catch ( final DependencyResolutionRequiredException ignore )
             {
             }
         }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java b/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java
index 283ca6a..45dd4ae 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/AssemblyProxyArchiver.java
@@ -20,6 +20,7 @@
  */
 
 import org.apache.maven.plugin.assembly.filter.ContainerDescriptorHandler;
+import org.codehaus.plexus.archiver.ArchiveEntry;
 import org.codehaus.plexus.archiver.ArchiveFinalizer;
 import org.codehaus.plexus.archiver.ArchivedFileSet;
 import org.codehaus.plexus.archiver.Archiver;
@@ -35,6 +36,7 @@
 import org.codehaus.plexus.components.io.resources.PlexusIoResourceCollection;
 import org.codehaus.plexus.logging.Logger;
 
+import javax.annotation.Nonnull;
 import java.io.File;
 import java.io.FileInputStream;
 import java.io.IOException;
@@ -53,7 +55,7 @@
  * <li>prefixing (where all paths have a set global prefix prepended before addition)</li>
  * <li>duplication checks on archive additions (for archive-file path + prefix)</li>
  * </ul>
- * 
+ *
  * @author jdcasey
  * @version $Id$
  */
@@ -86,15 +88,13 @@
 
     public AssemblyProxyArchiver( final String rootPrefix, final Archiver delegate,
                                   final List<ContainerDescriptorHandler> containerDescriptorHandlers,
-                                  final List<FileSelector> extraSelectors,
-                                  final List<ArchiveFinalizer> extraFinalizers, final File assemblyWorkDir,
-                                  final Logger logger, final boolean dryRun )
+                                  final List<FileSelector> extraSelectors, final List<ArchiveFinalizer> extraFinalizers,
+                                  final File assemblyWorkDir, final Logger logger, final boolean dryRun )
     {
         this.rootPrefix = rootPrefix;
         this.delegate = delegate;
 
-        assemblyWorkPath = assemblyWorkDir.getAbsolutePath()
-                                          .replace( '\\', '/' );
+        assemblyWorkPath = assemblyWorkDir.getAbsolutePath().replace( '\\', '/' );
 
         this.logger = logger;
         this.dryRun = dryRun;
@@ -106,7 +106,7 @@
 
         final List<FileSelector> selectors = new ArrayList<FileSelector>();
 
-        final boolean isFinalizerEnabled = ( delegate instanceof FinalizerEnabled );
+        FinalizerEnabled finalizer = ( delegate instanceof FinalizerEnabled ) ? (FinalizerEnabled) delegate : null;
 
         if ( containerDescriptorHandlers != null )
         {
@@ -114,9 +114,9 @@
             {
                 selectors.add( handler );
 
-                if ( isFinalizerEnabled )
+                if ( finalizer != null )
                 {
-                    ( (FinalizerEnabled) delegate ).addArchiveFinalizer( handler );
+                    finalizer.addArchiveFinalizer( handler );
                 }
             }
         }
@@ -129,11 +129,11 @@
             }
         }
 
-        if ( ( extraFinalizers != null ) && isFinalizerEnabled )
+        if ( ( extraFinalizers != null ) && finalizer != null )
         {
             for ( ArchiveFinalizer extraFinalizer : extraFinalizers )
             {
-                ( (FinalizerEnabled) delegate ).addArchiveFinalizer( extraFinalizer );
+                finalizer.addArchiveFinalizer( extraFinalizer );
             }
         }
 
@@ -143,9 +143,11 @@
         }
     }
 
-    public void addArchivedFileSet( final File archiveFile, final String prefix, final String[] includes,
+    /**
+     * {@inheritDoc}
+     */
+    public void addArchivedFileSet( final @Nonnull File archiveFile, final String prefix, final String[] includes,
                                     final String[] excludes )
-        throws ArchiverException
     {
         final String archiveKey = getArchiveKey( archiveFile, prefix );
         if ( seenPaths.contains( archiveKey ) )
@@ -204,7 +206,10 @@
         }
     }
 
-    public void addArchivedFileSet( final File archiveFile, final String prefix )
+    /**
+     * {@inheritDoc}
+     */
+    public void addArchivedFileSet( final @Nonnull File archiveFile, final String prefix )
         throws ArchiverException
     {
         final String archiveKey = getArchiveKey( archiveFile, prefix );
@@ -241,6 +246,9 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void addArchivedFileSet( final File archiveFile, final String[] includes, final String[] excludes )
         throws ArchiverException
     {
@@ -280,7 +288,10 @@
         }
     }
 
-    public void addArchivedFileSet( final File archiveFile )
+    /**
+     * {@inheritDoc}
+     */
+    public void addArchivedFileSet( final @Nonnull File archiveFile )
         throws ArchiverException
     {
         final String archiveKey = getArchiveKey( archiveFile, "" );
@@ -317,7 +328,10 @@
         }
     }
 
-    public void addDirectory( final File directory, final String prefix, final String[] includes,
+    /**
+     * {@inheritDoc}
+     */
+    public void addDirectory( final @Nonnull File directory, final String prefix, final String[] includes,
                               final String[] excludes )
         throws ArchiverException
     {
@@ -349,7 +363,61 @@
         }
     }
 
-    public void addDirectory( final File directory, final String prefix )
+    /**
+     * {@inheritDoc}
+     */
+    public void addSymlink( String symlinkName, String symlinkDestination )
+        throws ArchiverException
+    {
+        inPublicApi.set( Boolean.TRUE );
+        try
+        {
+            if ( dryRun )
+            {
+                debug( "DRY RUN: Skipping delegated call to: " + getMethodName() );
+            }
+            else
+            {
+                delegate.addSymlink( symlinkName, symlinkDestination );
+            }
+        }
+        finally
+        {
+            inPublicApi.set( null );
+        }
+
+    }
+
+    /**
+     * {@inheritDoc}
+     */
+    public void addSymlink( String symlinkName, int permissions, String symlinkDestination )
+        throws ArchiverException
+    {
+        inPublicApi.set( Boolean.TRUE );
+        try
+        {
+            if ( dryRun )
+            {
+                debug( "DRY RUN: Skipping delegated call to: " + getMethodName() );
+            }
+            else
+            {
+                delegate.addSymlink( symlinkName, permissions, symlinkDestination );
+            }
+
+        }
+        finally
+        {
+            inPublicApi.set( null );
+        }
+
+    }
+
+    /**
+     * {@inheritDoc}
+     */
+    public void addDirectory( final @Nonnull File directory, final String prefix )
         throws ArchiverException
     {
         inPublicApi.set( Boolean.TRUE );
@@ -378,7 +446,10 @@
         }
     }
 
-    public void addDirectory( final File directory, final String[] includes, final String[] excludes )
+    /**
+     * {@inheritDoc}
+     */
+    public void addDirectory( final @Nonnull File directory, final String[] includes, final String[] excludes )
         throws ArchiverException
     {
         inPublicApi.set( Boolean.TRUE );
@@ -409,7 +480,10 @@
         }
     }
 
-    public void addDirectory( final File directory )
+    /**
+     * {@inheritDoc}
+     */
+    public void addDirectory( final @Nonnull File directory )
         throws ArchiverException
     {
         inPublicApi.set( Boolean.TRUE );
@@ -438,7 +512,10 @@
         }
     }
 
-    public void addFile( final File inputFile, final String destFileName, final int permissions )
+    /**
+     * {@inheritDoc}
+     */
+    public void addFile( final @Nonnull File inputFile, final @Nonnull String destFileName, final int permissions )
         throws ArchiverException
     {
         if ( acceptFile( inputFile ) )
@@ -464,7 +541,10 @@
         }
     }
 
-    public void addFile( final File inputFile, final String destFileName )
+    /**
+     * {@inheritDoc}
+     */
+    public void addFile( final @Nonnull File inputFile, final @Nonnull String destFileName )
         throws ArchiverException
     {
         if ( acceptFile( inputFile ) )
@@ -490,6 +570,9 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void createArchive()
         throws ArchiverException, IOException
     {
@@ -512,6 +595,9 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public int getDefaultDirectoryMode()
     {
         inPublicApi.set( Boolean.TRUE );
@@ -525,6 +611,9 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public int getDefaultFileMode()
     {
         inPublicApi.set( Boolean.TRUE );
@@ -538,6 +627,9 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public File getDestFile()
     {
         inPublicApi.set( Boolean.TRUE );
@@ -552,7 +644,7 @@
     }
 
     @SuppressWarnings( { "rawtypes", "deprecation" } )
-    public Map getFiles()
+    /** {@inheritDoc} */ public Map<String, ArchiveEntry> getFiles()
     {
         inPublicApi.set( Boolean.TRUE );
         try
@@ -565,6 +657,9 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public boolean getIncludeEmptyDirs()
     {
         inPublicApi.set( Boolean.TRUE );
@@ -578,6 +673,9 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public boolean isForced()
     {
         inPublicApi.set( Boolean.TRUE );
@@ -591,6 +689,9 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public boolean isSupportingForced()
     {
         inPublicApi.set( Boolean.TRUE );
@@ -604,6 +705,9 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void setDefaultDirectoryMode( final int mode )
     {
         inPublicApi.set( Boolean.TRUE );
@@ -617,6 +721,9 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void setDefaultFileMode( final int mode )
     {
         inPublicApi.set( Boolean.TRUE );
@@ -630,6 +737,9 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void setDestFile( final File destFile )
     {
         inPublicApi.set( Boolean.TRUE );
@@ -643,6 +753,9 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void setForced( final boolean forced )
     {
         inPublicApi.set( Boolean.TRUE );
@@ -657,6 +770,9 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void setIncludeEmptyDirs( final boolean includeEmptyDirs )
     {
         inPublicApi.set( Boolean.TRUE );
@@ -670,11 +786,18 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void setDotFileDirectory( final File dotFileDirectory )
     {
-        throw new UnsupportedOperationException( "Undocumented feature of plexus-archiver; this is not yet supported." );
+        throw new UnsupportedOperationException(
+            "Undocumented feature of plexus-archiver; this is not yet supported." );
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void addArchivedFileSet( final ArchivedFileSet fileSet )
         throws ArchiverException
     {
@@ -708,7 +831,10 @@
         }
     }
 
-    public void addFileSet( final FileSet fileSet )
+    /**
+     * {@inheritDoc}
+     */
+    public void addFileSet( final @Nonnull FileSet fileSet )
         throws ArchiverException
     {
         inPublicApi.set( Boolean.TRUE );
@@ -736,9 +862,7 @@
     private void doAddFileSet( final FileSet fs )
         throws ArchiverException
     {
-        final String fsPath = fs.getDirectory()
-                                .getAbsolutePath()
-                                .replace( '\\', '/' );
+        final String fsPath = fs.getDirectory().getAbsolutePath().replace( '\\', '/' );
 
         if ( fsPath.equals( assemblyWorkPath ) )
         {
@@ -754,8 +878,9 @@
 
             final String workDirExclude = assemblyWorkPath.substring( fsPath.length() + 1 );
 
-            logger.debug( "Adding exclude for assembly working-directory: " + workDirExclude
-                            + "\nFile-Set source directory: " + fsPath );
+            logger.debug(
+                "Adding exclude for assembly working-directory: " + workDirExclude + "\nFile-Set source directory: "
+                    + fsPath );
 
             newEx.add( workDirExclude );
 
@@ -803,7 +928,7 @@
     private boolean acceptFile( final File inputFile )
         throws ArchiverException
     {
-        if ( Boolean.TRUE != inPublicApi.get() )
+        if ( !Boolean.TRUE.equals( inPublicApi.get()) )
         {
             if ( selectors != null )
             {
@@ -862,8 +987,15 @@
             return inputFile.isFile();
         }
 
+        public boolean isSymbolicLink()
+        {
+            return false;
+        }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void addResource( final PlexusIoResource resource, final String destFileName, final int permissions )
         throws ArchiverException
     {
@@ -878,6 +1010,9 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void addResources( final PlexusIoResourceCollection resources )
         throws ArchiverException
     {
@@ -892,17 +1027,28 @@
         }
     }
 
-    public ResourceIterator getResources()
+    /**
+     * {@inheritDoc}
+     */
+    public
+    @Nonnull
+    ResourceIterator getResources()
         throws ArchiverException
     {
         return delegate.getResources();
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public String getDuplicateBehavior()
     {
         return delegate.getDuplicateBehavior();
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void setDuplicateBehavior( final String duplicate )
     {
         inPublicApi.set( Boolean.TRUE );
@@ -916,26 +1062,41 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public int getDirectoryMode()
     {
         return delegate.getDirectoryMode();
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public int getFileMode()
     {
         return delegate.getFileMode();
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public int getOverrideDirectoryMode()
     {
         return delegate.getOverrideDirectoryMode();
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public int getOverrideFileMode()
     {
         return delegate.getOverrideFileMode();
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void setDirectoryMode( final int mode )
     {
         inPublicApi.set( Boolean.TRUE );
@@ -949,6 +1110,9 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void setFileMode( final int mode )
     {
         inPublicApi.set( Boolean.TRUE );
@@ -962,21 +1126,33 @@
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public boolean isUseJvmChmod()
     {
         return useJvmChmod;
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void setUseJvmChmod( final boolean useJvmChmod )
     {
         this.useJvmChmod = useJvmChmod;
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public boolean isIgnorePermissions()
     {
         return delegate.isIgnorePermissions();
     }
 
+    /**
+     * {@inheritDoc}
+     */
     public void setIgnorePermissions( final boolean ignorePermissions )
     {
         delegate.setIgnorePermissions( ignorePermissions );
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedArchivedFileSet.java b/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedArchivedFileSet.java
index 52c069e..00fa260 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedArchivedFileSet.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedArchivedFileSet.java
@@ -19,28 +19,38 @@
  * under the License.
  */
 
+import static org.apache.maven.plugin.assembly.archive.archiver.PrefixedFileSet.combineSelectors;
+
 import org.codehaus.plexus.archiver.ArchivedFileSet;
 import org.codehaus.plexus.components.io.fileselectors.FileSelector;
+import org.codehaus.plexus.components.io.functions.InputStreamTransformer;
 
 import java.io.File;
 
 /**
  * @version $Id$
  */
-public class PrefixedArchivedFileSet
+class PrefixedArchivedFileSet
     implements ArchivedFileSet
 {
 
     private final String rootPrefix;
+
     private final ArchivedFileSet fileSet;
+
     private final FileSelector[] selectors;
 
+    /**
+     * @param fileSet The archived file set.
+     * @param rootPrefix The root prefix.
+     * @param selectors The file selectors.
+     */
     public PrefixedArchivedFileSet( ArchivedFileSet fileSet, String rootPrefix, FileSelector[] selectors )
     {
         this.fileSet = fileSet;
         this.selectors = selectors;
 
-        if ( rootPrefix.length() > 0 && ! rootPrefix.endsWith( "/" ) )
+        if ( rootPrefix.length() > 0 && !rootPrefix.endsWith( "/" ) )
         {
             this.rootPrefix = rootPrefix + "/";
         }
@@ -50,41 +60,31 @@
         }
     }
 
+    /** {@inheritDoc} */
     public File getArchive()
     {
         return fileSet.getArchive();
     }
 
+    /** {@inheritDoc} */
     public String[] getExcludes()
     {
         return fileSet.getExcludes();
     }
 
+    /** {@inheritDoc} */
     public FileSelector[] getFileSelectors()
     {
-        FileSelector[] sel = fileSet.getFileSelectors();
-        if ( ( sel != null ) && ( selectors != null ) )
-        {
-            FileSelector[] temp = new FileSelector[ sel.length + selectors.length ];
-
-            System.arraycopy( sel, 0, temp, 0, sel.length );
-            System.arraycopy( selectors, 0, temp, sel.length, selectors.length );
-
-            sel = temp;
-        }
-        else if ( ( sel == null ) && ( selectors != null ) )
-        {
-            sel = selectors;
-        }
-
-        return sel;
+        return combineSelectors( fileSet.getFileSelectors(), selectors );
     }
 
+    /** {@inheritDoc} */
     public String[] getIncludes()
     {
         return fileSet.getIncludes();
     }
 
+    /** {@inheritDoc} */
     public String getPrefix()
     {
         String prefix = fileSet.getPrefix();
@@ -103,19 +103,27 @@
         return rootPrefix + prefix;
     }
 
+    /** {@inheritDoc} */
     public boolean isCaseSensitive()
     {
         return fileSet.isCaseSensitive();
     }
 
+    /** {@inheritDoc} */
     public boolean isIncludingEmptyDirectories()
     {
         return fileSet.isIncludingEmptyDirectories();
     }
 
+    /** {@inheritDoc} */
     public boolean isUsingDefaultExcludes()
     {
         return fileSet.isUsingDefaultExcludes();
     }
 
+    public InputStreamTransformer getStreamTransformer()
+    {
+        return fileSet.getStreamTransformer();
+    }
+
 }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedFileSet.java b/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedFileSet.java
index 76ed053..b6850fb 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedFileSet.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/PrefixedFileSet.java
@@ -21,13 +21,14 @@
 
 import org.codehaus.plexus.archiver.FileSet;
 import org.codehaus.plexus.components.io.fileselectors.FileSelector;
+import org.codehaus.plexus.components.io.functions.InputStreamTransformer;
 
 import java.io.File;
 
 /**
  * @version $Id$
  */
-public class PrefixedFileSet
+class PrefixedFileSet
     implements FileSet
 {
 
@@ -37,6 +38,11 @@
 
     private final FileSelector[] selectors;
 
+    /**
+     * @param fileSet The file set.
+     * @param rootPrefix The root prefix
+     * @param selectors The file selectors.
+     */
     public PrefixedFileSet( final FileSet fileSet, final String rootPrefix, final FileSelector[] selectors )
     {
         this.fileSet = fileSet;
@@ -52,36 +58,47 @@
         }
     }
 
+    /** {@inheritDoc} */
     public String[] getExcludes()
     {
         return fileSet.getExcludes();
     }
 
+    /** {@inheritDoc} */
     public FileSelector[] getFileSelectors()
     {
         FileSelector[] sel = fileSet.getFileSelectors();
-        if ( ( sel != null ) && ( selectors != null ) )
-        {
-            final FileSelector[] temp = new FileSelector[sel.length + selectors.length];
-
-            System.arraycopy( sel, 0, temp, 0, sel.length );
-            System.arraycopy( selectors, 0, temp, sel.length, selectors.length );
-
-            sel = temp;
-        }
-        else if ( ( sel == null ) && ( selectors != null ) )
-        {
-            sel = selectors;
-        }
-
-        return sel;
+        final FileSelector[] selectors1 = selectors;
+        return combineSelectors( sel, selectors1 );
     }
 
+    /** {@inheritDoc} */
+    static FileSelector[] combineSelectors( FileSelector[] first, FileSelector[] second )
+    {
+        if ( ( first != null ) && ( second != null ) )
+        {
+            final FileSelector[] temp = new FileSelector[first.length + second.length];
+
+            System.arraycopy( first, 0, temp, 0, first.length );
+            System.arraycopy( second, 0, temp, first.length, second.length );
+
+            first = temp;
+        }
+        else if ( ( first == null ) && ( second != null ) )
+        {
+            first = second;
+        }
+
+        return first;
+    }
+
+    /** {@inheritDoc} */
     public String[] getIncludes()
     {
         return fileSet.getIncludes();
     }
 
+    /** {@inheritDoc} */
     public String getPrefix()
     {
         String prefix = fileSet.getPrefix();
@@ -105,24 +122,32 @@
         return rootPrefix + prefix;
     }
 
+    /** {@inheritDoc} */
     public boolean isCaseSensitive()
     {
         return fileSet.isCaseSensitive();
     }
 
+    /** {@inheritDoc} */
     public boolean isIncludingEmptyDirectories()
     {
         return fileSet.isIncludingEmptyDirectories();
     }
 
+    /** {@inheritDoc} */
     public boolean isUsingDefaultExcludes()
     {
         return fileSet.isUsingDefaultExcludes();
     }
 
+    /** {@inheritDoc} */
     public File getDirectory()
     {
         return fileSet.getDirectory();
     }
 
+    public InputStreamTransformer getStreamTransformer()
+    {
+        return fileSet.getStreamTransformer();
+    }
 }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/SarUnArchiver.java b/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/SarUnArchiver.java
index a9991fc..705c8f2 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/SarUnArchiver.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/archiver/SarUnArchiver.java
@@ -26,7 +26,7 @@
  * @version $Id$
  * @todo delete this class once the plexus maven plugin can merge a generated components.xml with an existing one.
  */
-public class SarUnArchiver
+class SarUnArchiver
     extends ZipUnArchiver
 {
 
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java
index fe53d99..f586542 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/AssemblyArchiverPhase.java
@@ -20,11 +20,10 @@
  */
 
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
 import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.model.Assembly;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
 import org.codehaus.plexus.archiver.Archiver;
 
 /**
@@ -40,16 +39,14 @@
     /**
      * Handle the associated section of the assembly descriptor.
      * 
-     * @param assembly
-     *            The assembly descriptor to use
-     * @param archiver
-     *            The archiver used to create the assembly archive, to which files/directories/artifacts are added
-     * @param configSource
-     *            The configuration for this assembly build, normally derived from the plugin that launched the assembly
-     *            process.
-     * @param context
+     * @param assembly The assembly descriptor to use
+     * @param archiver The archiver used to create the assembly archive, to which files/directories/artifacts are added
+     * @param configSource The configuration for this assembly build, normally derived from the plugin that launched the
+     *            assembly process.
+     * @throws ArchiveCreationException in case of an archive creation error.
+     * @throws AssemblyFormattingException in case of a assembly formatting exception.
+     * @throws InvalidAssemblerConfigurationException in case of an invalid assembler configuration.
      */
-    void execute( Assembly assembly, Archiver archiver, AssemblerConfigurationSource configSource,
-                  AssemblyContext context )
+    void execute( ResolvedAssembly assembly, Archiver archiver, AssemblerConfigurationSource configSource )
         throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException;
 }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java
index 7d14fdd..c9b7a10 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java
@@ -20,12 +20,11 @@
  */
 
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
 import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
 import org.apache.maven.plugin.assembly.archive.task.AddDependencySetsTask;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.model.Assembly;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
 import org.apache.maven.project.MavenProjectBuilder;
 import org.codehaus.plexus.archiver.Archiver;
 import org.codehaus.plexus.archiver.manager.ArchiverManager;
@@ -51,11 +50,18 @@
     @Requirement
     private ArchiverManager archiverManager;
 
+    /**
+     * Default constructor.
+     */
     public DependencySetAssemblyPhase()
     {
         // used for plexus init
     }
 
+    /**
+     * @param projectBuilder The Maven Project Builder.
+     * @param logger The Logger.
+     */
     public DependencySetAssemblyPhase( final MavenProjectBuilder projectBuilder, final Logger logger )
     {
         this.projectBuilder = projectBuilder;
@@ -65,12 +71,12 @@
     /**
      * {@inheritDoc}
      */
-    public void execute( final Assembly assembly, final Archiver archiver,
-                         final AssemblerConfigurationSource configSource, final AssemblyContext context )
+    public void execute( final ResolvedAssembly assembly, final Archiver archiver,
+                         final AssemblerConfigurationSource configSource )
         throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
     {
         final AddDependencySetsTask task =
-            new AddDependencySetsTask( assembly.getDependencySets(), context.getResolvedArtifacts(),
+            new AddDependencySetsTask( assembly.getDependencySets(), assembly.getResolvedDependencySetArtifacts(),
                                        configSource.getProject(), projectBuilder, archiverManager, getLogger() );
 
         task.execute( archiver, configSource );
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java
index 8e9f069..c24747a 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhase.java
@@ -20,16 +20,14 @@
  */
 
 import java.io.File;
-import java.util.Iterator;
 import java.util.List;
 
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
 import org.apache.maven.plugin.assembly.format.FileFormatter;
-import org.apache.maven.plugin.assembly.model.Assembly;
 import org.apache.maven.plugin.assembly.model.FileItem;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
 import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
 import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
 import org.codehaus.plexus.archiver.Archiver;
@@ -51,57 +49,68 @@
     /**
      * {@inheritDoc}
      */
-    public void execute( final Assembly assembly, final Archiver archiver,
-                         final AssemblerConfigurationSource configSource, final AssemblyContext context )
+    public void execute( final ResolvedAssembly assembly, final Archiver archiver,
+                         final AssemblerConfigurationSource configSource )
         throws ArchiveCreationException, AssemblyFormattingException
     {
         final List<FileItem> fileList = assembly.getFiles();
         final File basedir = configSource.getBasedir();
 
         final FileFormatter fileFormatter = new FileFormatter( configSource, getLogger() );
-        for (final FileItem fileItem : fileList) {
+        for ( final FileItem fileItem : fileList )
+        {
             final String sourcePath = fileItem.getSource();
 
             // ensure source file is in absolute path for reactor build to work
-            File source = new File(sourcePath);
+            File source = new File( sourcePath );
 
             // save the original sourcefile's name, because filtration may
             // create a temp file with a different name.
             final String sourceName = source.getName();
 
-            if (!source.isAbsolute()) {
-                source = new File(basedir, sourcePath);
+            if ( !source.isAbsolute() )
+            {
+                source = new File( basedir, sourcePath );
             }
 
             source =
-                    fileFormatter.format(source, fileItem.isFiltered(), fileItem.getLineEnding(),
-                            configSource.getEncoding());
+                fileFormatter.format( source, fileItem.isFiltered(), fileItem.getLineEnding(),
+                                      configSource.getEncoding() );
 
             String destName = fileItem.getDestName();
 
-            if (destName == null) {
+            if ( destName == null )
+            {
                 destName = sourceName;
             }
 
             final String outputDirectory =
-                    AssemblyFormatUtils.getOutputDirectory(fileItem.getOutputDirectory(), configSource.getProject(), null,
-                            configSource.getFinalName(), configSource);
+                AssemblyFormatUtils.getOutputDirectory( fileItem.getOutputDirectory(), configSource.getProject(), null,
+                                                        configSource.getFinalName(), configSource );
 
             String target;
 
             // omit the last char if ends with / or \\
-            if (outputDirectory.endsWith("/") || outputDirectory.endsWith("\\")) {
+            if ( outputDirectory.endsWith( "/" ) || outputDirectory.endsWith( "\\" ) )
+            {
                 target = outputDirectory + destName;
-            } else if (outputDirectory.length() < 1) {
+            }
+            else if ( outputDirectory.length() < 1 )
+            {
                 target = destName;
-            } else {
+            }
+            else
+            {
                 target = outputDirectory + "/" + destName;
             }
 
-            try {
-                archiver.addFile(source, target, TypeConversionUtils.modeToInt(fileItem.getFileMode(), getLogger()));
-            } catch (final ArchiverException e) {
-                throw new ArchiveCreationException("Error adding file to archive: " + e.getMessage(), e);
+            try
+            {
+                archiver.addFile( source, target, TypeConversionUtils.modeToInt( fileItem.getFileMode(), getLogger() ) );
+            }
+            catch ( final ArchiverException e )
+            {
+                throw new ArchiveCreationException( "Error adding file to archive: " + e.getMessage(), e );
             }
         }
     }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhase.java b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhase.java
index dacb3df..93109af 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhase.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhase.java
@@ -22,16 +22,17 @@
 import java.util.List;
 
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
 import org.apache.maven.plugin.assembly.archive.task.AddFileSetsTask;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.model.Assembly;
 import org.apache.maven.plugin.assembly.model.FileSet;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
 import org.codehaus.plexus.archiver.Archiver;
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.logging.AbstractLogEnabled;
 
+import javax.annotation.Nonnull;
+
 /**
  * Handles the &lt;fileSets/&gt; top-level section of the assembly descriptor.
  * 
@@ -46,8 +47,8 @@
     /**
      * {@inheritDoc}
      */
-    public void execute( final Assembly assembly, final Archiver archiver,
-                         final AssemblerConfigurationSource configSource, final AssemblyContext context )
+    public void execute( @Nonnull final ResolvedAssembly assembly, final Archiver archiver,
+                         final AssemblerConfigurationSource configSource )
         throws ArchiveCreationException, AssemblyFormattingException
     {
         final List<FileSet> fileSets = assembly.getFileSets();
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java
index 955f8ff..9ba4d7b 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java
@@ -30,22 +30,25 @@
 import java.util.Map;
 import java.util.Set;
 
+import javax.annotation.Nonnull;
+
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.ArtifactUtils;
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
 import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
 import org.apache.maven.plugin.assembly.archive.task.AddArtifactTask;
 import org.apache.maven.plugin.assembly.archive.task.AddDependencySetsTask;
 import org.apache.maven.plugin.assembly.archive.task.AddFileSetsTask;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.model.Assembly;
 import org.apache.maven.plugin.assembly.model.DependencySet;
 import org.apache.maven.plugin.assembly.model.FileSet;
 import org.apache.maven.plugin.assembly.model.ModuleBinaries;
 import org.apache.maven.plugin.assembly.model.ModuleSet;
 import org.apache.maven.plugin.assembly.model.ModuleSources;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
+import org.apache.maven.plugin.assembly.resolved.ResolvedModuleSet;
+import org.apache.maven.plugin.assembly.resolved.functions.ResolvedModuleSetConsumer;
 import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
 import org.apache.maven.plugin.assembly.utils.FilterUtils;
 import org.apache.maven.plugin.assembly.utils.ProjectUtils;
@@ -70,8 +73,11 @@
     implements AssemblyArchiverPhase
 {
 
-    //TODO: Remove if using something like commons-lang instead.
-    public static final String LINE_SEPARATOR = System.getProperty("line.separator");
+    // TODO: Remove if using something like commons-lang instead.
+    /**
+     * The line separator.
+     */
+    private static final String LINE_SEPARATOR = System.getProperty( "line.separator" );
 
     @Requirement
     private MavenProjectBuilder projectBuilder;
@@ -79,11 +85,18 @@
     @Requirement
     private ArchiverManager archiverManager;
 
+    /**
+     * Create an instance.
+     */
     public ModuleSetAssemblyPhase()
     {
         // needed for plexus
     }
 
+    /**
+     * @param projectBuilder The project builder.
+     * @param logger The logger.
+     */
     public ModuleSetAssemblyPhase( final MavenProjectBuilder projectBuilder, final Logger logger )
     {
         this.projectBuilder = projectBuilder;
@@ -93,23 +106,27 @@
     /**
      * {@inheritDoc}
      */
-    public void execute( final Assembly assembly, final Archiver archiver,
-                         final AssemblerConfigurationSource configSource, final AssemblyContext context )
+    public void execute( final ResolvedAssembly assembly, final Archiver archiver,
+                         final AssemblerConfigurationSource configSource )
         throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
     {
-        final List<ModuleSet> moduleSets = assembly.getModuleSets();
+        assembly.forEachResolvedModule( new ResolvedModuleSetConsumer()
+        {
+            public void accept( ResolvedModuleSet resolvedModule )
+                throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
+            {
+                validate( resolvedModule.getModuleSet(), configSource );
 
-        for (final ModuleSet moduleSet : moduleSets) {
-            validate(moduleSet, configSource);
+                final Set<MavenProject> moduleProjects =
+                    getModuleProjects( resolvedModule.getModuleSet(), configSource, getLogger() );
 
-            final Set<MavenProject> moduleProjects = getModuleProjects(moduleSet, configSource, getLogger());
+                final ModuleSources sources = resolvedModule.getModuleSet().getSources();
+                addModuleSourceFileSets( sources, moduleProjects, archiver, configSource );
 
-            final ModuleSources sources = moduleSet.getSources();
-            addModuleSourceFileSets(sources, moduleProjects, archiver, configSource);
-
-            final ModuleBinaries binaries = moduleSet.getBinaries();
-            addModuleBinaries(binaries, moduleProjects, archiver, configSource, context);
-        }
+                final ModuleBinaries binaries = resolvedModule.getModuleSet().getBinaries();
+                addModuleBinaries( resolvedModule, binaries, moduleProjects, archiver, configSource );
+            }
+        } );
     }
 
     private void validate( final ModuleSet moduleSet, final AssemblerConfigurationSource configSource )
@@ -153,9 +170,9 @@
         }
     }
 
-    protected void addModuleBinaries( final ModuleBinaries binaries, final Set<MavenProject> projects,
-                                      final Archiver archiver, final AssemblerConfigurationSource configSource,
-                                      final AssemblyContext context )
+    void addModuleBinaries( ResolvedModuleSet resolvedModule, final ModuleBinaries binaries,
+                            final Set<MavenProject> projects, final Archiver archiver,
+                            final AssemblerConfigurationSource configSource )
         throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
     {
         if ( binaries == null )
@@ -183,55 +200,66 @@
 
         final Map<MavenProject, Artifact> chosenModuleArtifacts = new HashMap<MavenProject, Artifact>();
 
-        for (final MavenProject project : moduleProjects) {
+        for ( final MavenProject project : moduleProjects )
+        {
             Artifact artifact = null;
 
-            if (classifier == null) {
-                getLogger().debug("Processing binary artifact for module project: " + project.getId());
+            if ( classifier == null )
+            {
+                getLogger().debug( "Processing binary artifact for module project: " + project.getId() );
 
                 artifact = project.getArtifact();
-            } else {
-                getLogger().debug("Processing binary attachment: " + classifier + " for module project: "
-                        + project.getId());
+            }
+            else
+            {
+                getLogger().debug( "Processing binary attachment: " + classifier + " for module project: "
+                                       + project.getId() );
 
-                @SuppressWarnings("unchecked")
+                @SuppressWarnings( "unchecked" )
                 final List<Artifact> attachments = project.getAttachedArtifacts();
-                if ((attachments != null) && !attachments.isEmpty()) {
-                    for (final Artifact attachment : attachments) {
-                        if (classifier.equals(attachment.getClassifier())) {
+                if ( ( attachments != null ) && !attachments.isEmpty() )
+                {
+                    for ( final Artifact attachment : attachments )
+                    {
+                        if ( classifier.equals( attachment.getClassifier() ) )
+                        {
                             artifact = attachment;
                             break;
                         }
                     }
                 }
 
-                if (artifact == null) {
-                    throw new InvalidAssemblerConfigurationException("Cannot find attachment with classifier: "
-                            + classifier + " in module project: " + project.getId()
-                            + ". Please exclude this module from the module-set.");
+                if ( artifact == null )
+                {
+                    throw new InvalidAssemblerConfigurationException( "Cannot find attachment with classifier: "
+                        + classifier + " in module project: " + project.getId()
+                        + ". Please exclude this module from the module-set." );
                 }
             }
 
-            chosenModuleArtifacts.put(project, artifact);
-            addModuleArtifact(artifact, project, archiver, configSource, binaries);
+            chosenModuleArtifacts.put( project, artifact );
+            addModuleArtifact( artifact, project, archiver, configSource, binaries );
         }
 
         final List<DependencySet> depSets = getDependencySets( binaries );
 
         if ( depSets != null )
         {
-            for (final DependencySet ds : depSets) {
+            for ( final DependencySet ds : depSets )
+            {
                 // NOTE: Disabling useProjectArtifact flag, since module artifact has already been handled!
-                ds.setUseProjectArtifact(false);
+                ds.setUseProjectArtifact( false );
             }
 
-            //TODO: The following should be moved into a shared component, cause this
-            //test is the same as in maven-enforce rules ReactorModuleConvergence.
+            // TODO: The following should be moved into a shared component, cause this
+            // test is the same as in maven-enforce rules ReactorModuleConvergence.
             List<MavenProject> validateModuleVersions = validateModuleVersions( moduleProjects );
-            if (!validateModuleVersions.isEmpty()) {
-                
-                StringBuilder sb = new StringBuilder().append( "The current modules seemed to be having different versions.");
-                sb.append (LINE_SEPARATOR);
+            if ( !validateModuleVersions.isEmpty() )
+            {
+
+                StringBuilder sb =
+                    new StringBuilder().append( "The current modules seemed to be having different versions." );
+                sb.append( LINE_SEPARATOR );
                 for ( MavenProject mavenProject : validateModuleVersions )
                 {
                     sb.append( " --> " );
@@ -241,27 +269,30 @@
                 getLogger().warn( sb.toString() );
             }
 
-            for (final MavenProject moduleProject : moduleProjects) {
-                getLogger().debug("Processing binary dependencies for module project: " + moduleProject.getId());
+            for ( final MavenProject moduleProject : moduleProjects )
+            {
+                getLogger().debug( "Processing binary dependencies for module project: " + moduleProject.getId() );
 
                 final AddDependencySetsTask task =
-                        new AddDependencySetsTask(depSets, context.getResolvedArtifacts(), moduleProject, projectBuilder,
-                                archiverManager, getLogger());
+                    new AddDependencySetsTask( depSets, resolvedModule.getArtifacts(), moduleProject, projectBuilder,
+                                               archiverManager, getLogger() );
 
-                task.setModuleProject(moduleProject);
-                task.setModuleArtifact(chosenModuleArtifacts.get(moduleProject));
-                task.setDefaultOutputDirectory(binaries.getOutputDirectory());
-                task.setDefaultOutputFileNameMapping(binaries.getOutputFileNameMapping());
+                task.setModuleProject( moduleProject );
+                task.setModuleArtifact( chosenModuleArtifacts.get( moduleProject ) );
+                task.setDefaultOutputDirectory( binaries.getOutputDirectory() );
+                task.setDefaultOutputFileNameMapping( binaries.getOutputFileNameMapping() );
 
-                task.execute(archiver, configSource);
+                task.execute( archiver, configSource );
             }
         }
     }
 
-    private List<MavenProject> validateModuleVersions (Set<MavenProject> moduleProjects) {
+    private List<MavenProject> validateModuleVersions( Set<MavenProject> moduleProjects )
+    {
         List<MavenProject> result = new ArrayList<MavenProject>();
 
-        if (moduleProjects != null && !moduleProjects.isEmpty()) {
+        if ( moduleProjects != null && !moduleProjects.isEmpty() )
+        {
             String version = moduleProjects.iterator().next().getVersion();
             getLogger().debug( "First version:" + version );
             for ( MavenProject mavenProject : moduleProjects )
@@ -275,7 +306,7 @@
         }
         return result;
     }
-    
+
     public static List<DependencySet> getDependencySets( final ModuleBinaries binaries )
     {
         List<DependencySet> depSets = binaries.getDependencySets();
@@ -321,8 +352,8 @@
     // return excludes;
     // }
 
-    protected void addModuleArtifact( final Artifact artifact, final MavenProject project, final Archiver archiver,
-                                      final AssemblerConfigurationSource configSource, final ModuleBinaries binaries )
+    void addModuleArtifact( final Artifact artifact, final MavenProject project, final Archiver archiver,
+                            final AssemblerConfigurationSource configSource, final ModuleBinaries binaries )
         throws ArchiveCreationException, AssemblyFormattingException
     {
         if ( artifact.getFile() == null )
@@ -363,8 +394,8 @@
         task.execute( archiver, configSource );
     }
 
-    protected void addModuleSourceFileSets( final ModuleSources sources, final Set<MavenProject> moduleProjects,
-                                            final Archiver archiver, final AssemblerConfigurationSource configSource )
+    void addModuleSourceFileSets( final ModuleSources sources, final Set<MavenProject> moduleProjects,
+                                  final Archiver archiver, final AssemblerConfigurationSource configSource )
         throws ArchiveCreationException, AssemblyFormattingException
     {
         if ( sources == null )
@@ -397,29 +428,31 @@
 
         fileSets.addAll( subFileSets );
 
-        for (final MavenProject moduleProject : moduleProjects) {
-            getLogger().info("Processing sources for module project: " + moduleProject.getId());
+        for ( final MavenProject moduleProject : moduleProjects )
+        {
+            getLogger().info( "Processing sources for module project: " + moduleProject.getId() );
 
             final List<FileSet> moduleFileSets = new ArrayList<FileSet>();
 
-            for (final FileSet fileSet : fileSets) {
-                moduleFileSets.add(createFileSet(fileSet, sources, moduleProject, configSource));
+            for ( final FileSet fileSet : fileSets )
+            {
+                moduleFileSets.add( createFileSet( fileSet, sources, moduleProject, configSource ) );
             }
 
-            final AddFileSetsTask task = new AddFileSetsTask(moduleFileSets);
+            final AddFileSetsTask task = new AddFileSetsTask( moduleFileSets );
 
-            task.setProject(moduleProject);
-            task.setModuleProject(moduleProject);
-            task.setLogger(getLogger());
+            task.setProject( moduleProject );
+            task.setModuleProject( moduleProject );
+            task.setLogger( getLogger() );
 
-            task.execute(archiver, configSource);
+            task.execute( archiver, configSource );
         }
     }
 
     /**
      * Determine whether the deprecated file-set configuration directly within the ModuleSources object is present.
      */
-    protected boolean isDeprecatedModuleSourcesConfigPresent( final ModuleSources sources )
+    boolean isDeprecatedModuleSourcesConfigPresent( @Nonnull final ModuleSources sources )
     {
         boolean result = false;
 
@@ -439,8 +472,10 @@
         return result;
     }
 
-    protected FileSet createFileSet( final FileSet fileSet, final ModuleSources sources,
-                                     final MavenProject moduleProject, final AssemblerConfigurationSource configSource )
+    @Nonnull
+    FileSet createFileSet( @Nonnull final FileSet fileSet, @Nonnull final ModuleSources sources,
+                           @Nonnull final MavenProject moduleProject,
+                           @Nonnull final AssemblerConfigurationSource configSource )
         throws AssemblyFormattingException
     {
         final FileSet fs = new FileSet();
@@ -478,8 +513,9 @@
         {
             @SuppressWarnings( "unchecked" )
             final List<String> modules = moduleProject.getModules();
-            for (final String moduleSubPath : modules) {
-                excludes.add(moduleSubPath + "/**");
+            for ( final String moduleSubPath : modules )
+            {
+                excludes.add( moduleSubPath + "/**" );
             }
         }
 
@@ -527,6 +563,7 @@
         return fs;
     }
 
+    @Nonnull
     public static Set<MavenProject> getModuleProjects( final ModuleSet moduleSet,
                                                        final AssemblerConfigurationSource configSource,
                                                        final Logger logger )
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java
index 8902155..ce560e7 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhase.java
@@ -20,19 +20,17 @@
  */
 
 import java.io.File;
-import java.util.Iterator;
 import java.util.List;
 
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
 import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
 import org.apache.maven.plugin.assembly.archive.phase.wrappers.RepoBuilderConfigSourceWrapper;
 import org.apache.maven.plugin.assembly.archive.phase.wrappers.RepoInfoWrapper;
 import org.apache.maven.plugin.assembly.archive.task.AddDirectoryTask;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.model.Assembly;
 import org.apache.maven.plugin.assembly.model.Repository;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
 import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
 import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
 import org.apache.maven.shared.repository.RepositoryAssembler;
@@ -70,48 +68,56 @@
     /**
      * {@inheritDoc}
      */
-    public void execute( final Assembly assembly, final Archiver archiver,
-                         final AssemblerConfigurationSource configSource, final AssemblyContext context )
+    @SuppressWarnings( "ResultOfMethodCallIgnored" )
+    public void execute( final ResolvedAssembly assembly, final Archiver archiver,
+                         final AssemblerConfigurationSource configSource )
         throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
     {
         final List<Repository> repositoriesList = assembly.getRepositories();
 
         final File tempRoot = configSource.getTemporaryRootDirectory();
 
-        for (final Repository repository : repositoriesList) {
+        for ( final Repository repository : repositoriesList )
+        {
             final String outputDirectory =
-                    AssemblyFormatUtils.getOutputDirectory(repository.getOutputDirectory(), configSource.getProject(),
-                            null, configSource.getFinalName(), configSource);
+                AssemblyFormatUtils.getOutputDirectory( repository.getOutputDirectory(), configSource.getProject(),
+                                                        null, configSource.getFinalName(), configSource );
 
-            final File repositoryDirectory = new File(tempRoot, outputDirectory);
+            final File repositoryDirectory = new File( tempRoot, outputDirectory );
 
-            if (!repositoryDirectory.exists()) {
+            if ( !repositoryDirectory.exists() )
+            {
                 repositoryDirectory.mkdirs();
             }
 
-            try {
-                getLogger().debug("Assembling repository to: " + repositoryDirectory);
-                repositoryAssembler.buildRemoteRepository(repositoryDirectory, wrap(repository), wrap(configSource));
-                getLogger().debug("Finished assembling repository to: " + repositoryDirectory);
-            } catch (final RepositoryAssemblyException e) {
-                throw new ArchiveCreationException("Failed to assemble repository: " + e.getMessage(), e);
+            try
+            {
+                getLogger().debug( "Assembling repository to: " + repositoryDirectory );
+                repositoryAssembler.buildRemoteRepository( repositoryDirectory, wrap( repository ), wrap( configSource ) );
+                getLogger().debug( "Finished assembling repository to: " + repositoryDirectory );
+            }
+            catch ( final RepositoryAssemblyException e )
+            {
+                throw new ArchiveCreationException( "Failed to assemble repository: " + e.getMessage(), e );
             }
 
-            final AddDirectoryTask task = new AddDirectoryTask(repositoryDirectory);
+            final AddDirectoryTask task = new AddDirectoryTask( repositoryDirectory );
 
-            final int dirMode = TypeConversionUtils.modeToInt(repository.getDirectoryMode(), getLogger());
-            if (dirMode != -1) {
-                task.setDirectoryMode(dirMode);
+            final int dirMode = TypeConversionUtils.modeToInt( repository.getDirectoryMode(), getLogger() );
+            if ( dirMode != -1 )
+            {
+                task.setDirectoryMode( dirMode );
             }
 
-            final int fileMode = TypeConversionUtils.modeToInt(repository.getFileMode(), getLogger());
-            if (fileMode != -1) {
-                task.setFileMode(fileMode);
+            final int fileMode = TypeConversionUtils.modeToInt( repository.getFileMode(), getLogger() );
+            if ( fileMode != -1 )
+            {
+                task.setFileMode( fileMode );
             }
 
-            task.setOutputDirectory(outputDirectory);
+            task.setOutputDirectory( outputDirectory );
 
-            task.execute(archiver, configSource);
+            task.execute( archiver );
         }
     }
 
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java
index eeda501..fe9c03c 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java
@@ -26,27 +26,33 @@
 /**
  * @version $Id$
  */
-public class GroupVersionAlignmentWrapper
+class GroupVersionAlignmentWrapper
     implements org.apache.maven.shared.repository.model.GroupVersionAlignment
 {
 
     private final GroupVersionAlignment alignment;
 
+    /**
+     * @param alignment @{link {@link GroupVersionAlignment}
+     */
     public GroupVersionAlignmentWrapper( final GroupVersionAlignment alignment )
     {
         this.alignment = alignment;
     }
 
+    /** {@inheritDoc} */
     public List<String> getExcludes()
     {
         return alignment.getExcludes();
     }
 
+    /** {@inheritDoc} */
     public String getId()
     {
         return alignment.getId();
     }
 
+    /** {@inheritDoc} */
     public String getVersion()
     {
         return alignment.getVersion();
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java
index f2ec37f..2fd43a0 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java
@@ -24,7 +24,6 @@
 import org.apache.maven.shared.repository.model.RepositoryInfo;
 
 import java.util.ArrayList;
-import java.util.Iterator;
 import java.util.List;
 
 /**
@@ -38,16 +37,21 @@
 
     private List<GroupVersionAlignmentWrapper> convertedAlignments;
 
+    /**
+     * @param repo The {@link Repository}
+     */
     public RepoInfoWrapper( final Repository repo )
     {
         this.repo = repo;
     }
 
+    /** {@inheritDoc} */
     public List<String> getExcludes()
     {
         return repo.getExcludes();
     }
 
+    /** {@inheritDoc} */
     public List<GroupVersionAlignmentWrapper> getGroupVersionAlignments()
     {
         final List<GroupVersionAlignment> alignments = repo.getGroupVersionAlignments();
@@ -57,8 +61,9 @@
             final List<GroupVersionAlignmentWrapper> l =
                 new ArrayList<GroupVersionAlignmentWrapper>( alignments.size() );
 
-            for (final GroupVersionAlignment alignment : alignments) {
-                l.add(new GroupVersionAlignmentWrapper(alignment));
+            for ( final GroupVersionAlignment alignment : alignments )
+            {
+                l.add( new GroupVersionAlignmentWrapper( alignment ) );
             }
 
             convertedAlignments = l;
@@ -67,16 +72,19 @@
         return convertedAlignments;
     }
 
+    /** {@inheritDoc} */
     public List<String> getIncludes()
     {
         return repo.getIncludes();
     }
 
+    /** {@inheritDoc} */
     public String getScope()
     {
         return repo.getScope();
     }
 
+    /** {@inheritDoc} */
     public boolean isIncludeMetadata()
     {
         return repo.isIncludeMetadata();
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java b/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java
index a2d4bf4..4895336 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTask.java
@@ -40,7 +40,6 @@
  * @version $Id$
  */
 public class AddArtifactTask
-    implements ArchiverTask
 {
 
     public static final String[] DEFAULT_INCLUDES_ARRAY = { "**/*" };
@@ -270,21 +269,11 @@
         setFileNameMapping( outputFileNameMapping == null ? defaultOutputFileNameMapping : outputFileNameMapping );
     }
 
-    public MavenProject getModuleProject()
-    {
-        return moduleProject;
-    }
-
     public void setModuleProject( final MavenProject moduleProject )
     {
         this.moduleProject = moduleProject;
     }
 
-    public Artifact getModuleArtifact()
-    {
-        return moduleArtifact;
-    }
-
     public void setModuleArtifact( final Artifact moduleArtifact )
     {
         this.moduleArtifact = moduleArtifact;
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java b/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java
index 598354b..71d8fb3 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java
@@ -54,7 +54,6 @@
  * @version $Id$
  */
 public class AddDependencySetsTask
-    implements ArchiverTask
 {
 
     private static final List<String> NON_ARCHIVE_DEPENDENCY_TYPES;
@@ -116,13 +115,14 @@
             logger.debug( "Project " + project.getId() + " has no dependencies. Skipping dependency set addition." );
         }
 
-        for (final DependencySet dependencySet : dependencySets) {
-            addDependencySet(dependencySet, archiver, configSource);
+        for ( final DependencySet dependencySet : dependencySets )
+        {
+            addDependencySet( dependencySet, archiver, configSource );
         }
     }
 
-    protected void addDependencySet( final DependencySet dependencySet, final Archiver archiver,
-                                     final AssemblerConfigurationSource configSource )
+    void addDependencySet( final DependencySet dependencySet, final Archiver archiver,
+                           final AssemblerConfigurationSource configSource )
         throws AssemblyFormattingException, ArchiveCreationException, InvalidAssemblerConfigurationException
     {
         logger.debug( "Processing DependencySet (output=" + dependencySet.getOutputDirectory() + ")" );
@@ -130,7 +130,7 @@
         if ( !dependencySet.isUseTransitiveDependencies() && dependencySet.isUseTransitiveFiltering() )
         {
             logger.warn( "DependencySet has nonsensical configuration: useTransitiveDependencies == false "
-                            + "AND useTransitiveFiltering == true. Transitive filtering flag will be ignored." );
+                + "AND useTransitiveFiltering == true. Transitive filtering flag will be ignored." );
         }
 
         final Set<Artifact> dependencyArtifacts = resolveDependencyArtifacts( dependencySet );
@@ -148,26 +148,36 @@
 
         logger.debug( "Adding " + dependencyArtifacts.size() + " dependency artifacts." );
 
-        for (final Artifact depArtifact : dependencyArtifacts) {
+        for ( final Artifact depArtifact : dependencyArtifacts )
+        {
             MavenProject depProject;
-            try {
+            try
+            {
                 depProject =
-                        projectBuilder.buildFromRepository(depArtifact, configSource.getRemoteRepositories(),
-                                configSource.getLocalRepository());
-            } catch (final ProjectBuildingException e) {
-                logger.debug("Error retrieving POM of module-dependency: " + depArtifact.getId() + "; Reason: "
-                        + e.getMessage() + "\n\nBuilding stub project instance.");
+                    projectBuilder.buildFromRepository( depArtifact, configSource.getRemoteRepositories(),
+                                                        configSource.getLocalRepository() );
+            }
+            catch ( final ProjectBuildingException e )
+            {
+                logger.debug( "Error retrieving POM of module-dependency: " + depArtifact.getId() + "; Reason: "
+                    + e.getMessage() + "\n\nBuilding stub project instance." );
 
-                depProject = buildProjectStub(depArtifact);
+                depProject = buildProjectStub( depArtifact );
             }
 
-            if (NON_ARCHIVE_DEPENDENCY_TYPES.contains(depArtifact.getType())) {
-                addNonArchiveDependency(depArtifact, depProject, dependencySet, archiver, configSource);
-            } else {
-                if (filterContents) {
-                    addFilteredUnpackedArtifact(dependencySet, depArtifact, depProject, archiver, configSource);
-                } else {
-                    addNormalArtifact(dependencySet, depArtifact, depProject, archiver, configSource);
+            if ( NON_ARCHIVE_DEPENDENCY_TYPES.contains( depArtifact.getType() ) )
+            {
+                addNonArchiveDependency( depArtifact, depProject, dependencySet, archiver, configSource );
+            }
+            else
+            {
+                if ( filterContents )
+                {
+                    addFilteredUnpackedArtifact( dependencySet, depArtifact, depProject, archiver, configSource );
+                }
+                else
+                {
+                    addNormalArtifact( dependencySet, depArtifact, depProject, archiver, configSource );
                 }
             }
         }
@@ -187,15 +197,16 @@
             mapping = defaultOutputFileNameMapping;
         }
 
-        if ( ( dir == null || !dir.contains("${")) && ( mapping == null || !mapping.contains("${")) )
+        if ( ( dir == null || !dir.contains( "${" ) ) && ( mapping == null || !mapping.contains( "${" ) ) )
         {
             logger.warn( "NOTE: Your assembly specifies a dependencySet that matches multiple artifacts, but specifies a concrete output format. "
-                            + "THIS MAY RESULT IN ONE OR MORE ARTIFACTS BEING OBSCURED!\n\nOutput directory: '"
-                            + dir
-                            + "'\nOutput filename mapping: '" + mapping + "'" );
+                + "THIS MAY RESULT IN ONE OR MORE ARTIFACTS BEING OBSCURED!\n\nOutput directory: '"
+                + dir
+                + "'\nOutput filename mapping: '" + mapping + "'" );
         }
     }
 
+    @SuppressWarnings( "ResultOfMethodCallIgnored" )
     private void addFilteredUnpackedArtifact( final DependencySet dependencySet, final Artifact depArtifact,
                                               final MavenProject depProject, final Archiver archiver,
                                               final AssemblerConfigurationSource configSource )
@@ -204,11 +215,7 @@
         logger.debug( "Adding dependency artifact " + depArtifact.getId() + " after filtering the unpacked contents." );
 
         final StringBuilder sb =
-            new StringBuilder().append( depArtifact.getGroupId() )
-                               .append( "_" )
-                               .append( depArtifact.getArtifactId() )
-                               .append( "_" )
-                               .append( depArtifact.getVersion() );
+            new StringBuilder().append( depArtifact.getGroupId() ).append( "_" ).append( depArtifact.getArtifactId() ).append( "_" ).append( depArtifact.getVersion() );
 
         final String classifier = depArtifact.getClassifier();
         if ( classifier != null )
@@ -222,7 +229,7 @@
         if ( dir.exists() )
         {
             logger.debug( "NOT unpacking: " + depArtifact.getId() + ". Directory already exists in workdir:\n\t"
-                            + dir.getAbsolutePath() );
+                + dir.getAbsolutePath() );
         }
         else
         {
@@ -236,7 +243,7 @@
             catch ( final NoSuchArchiverException e )
             {
                 throw new ArchiveCreationException( "Failed to retrieve un-archiver for: " + depArtifact.getId()
-                                + ". Dependency filtering cannot proceed.", e );
+                    + ". Dependency filtering cannot proceed.", e );
             }
 
             unarchiver.setDestDirectory( dir );
@@ -251,7 +258,7 @@
             catch ( final ArchiverException e )
             {
                 throw new ArchiveCreationException( "Failed to unpack dependency archive: " + depArtifact.getId()
-                                + ". Dependency filtering cannot proceed.", e );
+                    + ". Dependency filtering cannot proceed.", e );
             }
         }
 
@@ -351,7 +358,7 @@
         return project;
     }
 
-    protected Set<Artifact> resolveDependencyArtifacts( final DependencySet dependencySet )
+    Set<Artifact> resolveDependencyArtifacts( final DependencySet dependencySet )
         throws InvalidAssemblerConfigurationException
     {
         final Set<Artifact> dependencyArtifacts = new LinkedHashSet<Artifact>();
@@ -370,7 +377,7 @@
             else
             {
                 logger.warn( "Cannot include project artifact: " + projectArtifact
-                                + "; it doesn't have an associated file or directory." );
+                    + "; it doesn't have an associated file or directory." );
             }
         }
 
@@ -380,12 +387,16 @@
             final List<Artifact> attachments = project.getAttachedArtifacts();
             if ( attachments != null )
             {
-                for (final Artifact attachment : attachments) {
-                    if (attachment.getFile() != null) {
-                        dependencyArtifacts.add(attachment);
-                    } else {
-                        logger.warn("Cannot include attached artifact: " + project.getId() + " for project: "
-                                + project.getId() + "; it doesn't have an associated file or directory.");
+                for ( final Artifact attachment : attachments )
+                {
+                    if ( attachment.getFile() != null )
+                    {
+                        dependencyArtifacts.add( attachment );
+                    }
+                    else
+                    {
+                        logger.warn( "Cannot include attached artifact: " + project.getId() + " for project: "
+                            + project.getId() + "; it doesn't have an associated file or directory." );
                     }
                 }
             }
@@ -409,9 +420,9 @@
         return dependencyArtifacts;
     }
 
-    protected void addNonArchiveDependency( final Artifact depArtifact, final MavenProject depProject,
-                                            final DependencySet dependencySet, final Archiver archiver,
-                                            final AssemblerConfigurationSource configSource )
+    void addNonArchiveDependency( final Artifact depArtifact, final MavenProject depProject,
+                                  final DependencySet dependencySet, final Archiver archiver,
+                                  final AssemblerConfigurationSource configSource )
         throws AssemblyFormattingException, ArchiveCreationException
     {
         final File source = depArtifact.getFile();
@@ -467,31 +478,16 @@
         return logger;
     }
 
-    public String getDefaultOutputDirectory()
-    {
-        return defaultOutputDirectory;
-    }
-
     public void setDefaultOutputDirectory( final String defaultOutputDirectory )
     {
         this.defaultOutputDirectory = defaultOutputDirectory;
     }
 
-    public String getDefaultOutputFileNameMapping()
-    {
-        return defaultOutputFileNameMapping;
-    }
-
     public void setDefaultOutputFileNameMapping( final String defaultOutputFileNameMapping )
     {
         this.defaultOutputFileNameMapping = defaultOutputFileNameMapping;
     }
 
-    public MavenProject getModuleProject()
-    {
-        return moduleProject;
-    }
-
     public void setModuleProject( final MavenProject moduleProject )
     {
         this.moduleProject = moduleProject;
@@ -501,9 +497,4 @@
     {
         this.moduleArtifact = moduleArtifact;
     }
-
-    public Artifact getModuleArtifact()
-    {
-        return moduleArtifact;
-    }
 }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTask.java b/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTask.java
index c96e55e..2204a19 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTask.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTask.java
@@ -19,12 +19,12 @@
  * under the License.
  */
 
-import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
 import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
 import org.codehaus.plexus.archiver.Archiver;
 import org.codehaus.plexus.archiver.ArchiverException;
 import org.codehaus.plexus.archiver.util.DefaultFileSet;
+import org.codehaus.plexus.components.io.functions.InputStreamTransformer;
 
 import java.io.File;
 import java.util.ArrayList;
@@ -34,11 +34,12 @@
  * @version $Id$
  */
 public class AddDirectoryTask
-    implements ArchiverTask
 {
 
     private final File directory;
 
+    private final InputStreamTransformer transformer;
+
     private List<String> includes;
 
     private List<String> excludes;
@@ -51,12 +52,18 @@
 
     private int fileMode = -1;
 
-    public AddDirectoryTask( final File directory )
+    public AddDirectoryTask( final File directory, InputStreamTransformer transformers )
     {
         this.directory = directory;
+
+        this.transformer = transformers;
+    }
+    public AddDirectoryTask( final File directory )
+    {
+        this( directory, null);
     }
 
-    public void execute( final Archiver archiver, final AssemblerConfigurationSource configSource )
+    public void execute( final Archiver archiver )
         throws ArchiveCreationException
     {
         if ( ".".equals( outputDirectory ) )
@@ -66,7 +73,7 @@
         else if ( "..".equals( outputDirectory ) )
         {
             throw new ArchiveCreationException( "Cannot add source directory: " + directory + " to archive-path: "
-                            + outputDirectory + ". All paths must be within the archive root directory." );
+                + outputDirectory + ". All paths must be within the archive root directory." );
         }
 
         final int oldDirMode = archiver.getOverrideDirectoryMode();
@@ -111,16 +118,7 @@
                         int i = 0;
                         for ( String include : includes )
                         {
-                            String value = AssemblyFormatUtils.fixRelativeRefs( include );
-
-                            if ( value.startsWith( "/" ) || value.startsWith( "\\" ) )
-                            {
-                                value = value.substring( 1 );
-                            }
-
-                            includesArray[i] = value;
-
-                            i++;
+                            includesArray[i++] = normalize( include );
                         }
                     }
 
@@ -130,16 +128,7 @@
                     int i = 0;
                     for ( String directoryExclude : directoryExcludes )
                     {
-                        String value = AssemblyFormatUtils.fixRelativeRefs( directoryExclude );
-
-                        if ( value.startsWith( "/" ) || value.startsWith( "\\" ) )
-                        {
-                            value = value.substring( 1 );
-                        }
-
-                        excludesArray[i] = value;
-
-                        i++;
+                        excludesArray[i++] = normalize( directoryExclude );
                     }
 
                     final DefaultFileSet fs = new DefaultFileSet();
@@ -148,6 +137,9 @@
                     fs.setDirectory( directory );
                     fs.setIncludes( includesArray );
                     fs.setExcludes( excludesArray );
+                    if (transformer != null){
+                            fs.setStreamTransformer( transformer );
+                    }
 
                     archiver.addFileSet( fs );
                 }
@@ -171,6 +163,17 @@
         }
     }
 
+    private String normalize( String include )
+    {
+        String value = AssemblyFormatUtils.fixRelativeRefs( include );
+
+        if ( value.startsWith( "/" ) || value.startsWith( "\\" ) )
+        {
+            value = value.substring( 1 );
+        }
+        return value;
+    }
+
     public void setExcludes( final List<String> excludes )
     {
         this.excludes = excludes;
diff --git a/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTask.java b/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTask.java
index b36686f..b1c1cca 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTask.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTask.java
@@ -20,7 +20,6 @@
  */
 
 import java.io.File;
-import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
@@ -28,12 +27,13 @@
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.format.FileSetFormatter;
+import org.apache.maven.plugin.assembly.format.ReaderFormatter;
 import org.apache.maven.plugin.assembly.model.FileSet;
 import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
 import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.archiver.Archiver;
+import org.codehaus.plexus.components.io.functions.InputStreamTransformer;
 import org.codehaus.plexus.logging.Logger;
 import org.codehaus.plexus.logging.console.ConsoleLogger;
 
@@ -41,7 +41,6 @@
  * @version $Id$
  */
 public class AddFileSetsTask
-    implements ArchiverTask
 {
 
     private final List<FileSet> fileSets;
@@ -77,29 +76,28 @@
             if ( !archiveBaseDir.exists() )
             {
                 throw new ArchiveCreationException( "The archive base directory '" + archiveBaseDir.getAbsolutePath()
-                                + "' does not exist" );
+                    + "' does not exist" );
             }
             else if ( !archiveBaseDir.isDirectory() )
             {
                 throw new ArchiveCreationException( "The archive base directory '" + archiveBaseDir.getAbsolutePath()
-                                + "' exists, but it is not a directory" );
+                    + "' exists, but it is not a directory" );
             }
         }
 
-        for (final FileSet fileSet : fileSets) {
-            addFileSet(fileSet, archiver, configSource, archiveBaseDir);
+        for ( final FileSet fileSet : fileSets )
+        {
+            addFileSet( fileSet, archiver, configSource, archiveBaseDir );
         }
     }
 
-    protected void addFileSet( final FileSet fileSet, final Archiver archiver,
-                               final AssemblerConfigurationSource configSource, final File archiveBaseDir )
+    void addFileSet( final FileSet fileSet, final Archiver archiver, final AssemblerConfigurationSource configSource,
+                     final File archiveBaseDir )
         throws AssemblyFormattingException, ArchiveCreationException
     {
         // throw this check in just in case someone extends this class...
         checkLogger();
 
-        final FileSetFormatter fileSetFormatter = new FileSetFormatter( configSource, logger );
-
         if ( project == null )
         {
             project = configSource.getProject();
@@ -121,9 +119,9 @@
         if ( logger.isDebugEnabled() )
         {
             logger.debug( "FileSet[" + destDirectory + "]" + " dir perms: "
-                            + Integer.toString( archiver.getOverrideDirectoryMode(), 8 ) + " file perms: "
-                            + Integer.toString( archiver.getOverrideFileMode(), 8 )
-                            + ( fileSet.getLineEnding() == null ? "" : " lineEndings: " + fileSet.getLineEnding() ) );
+                + Integer.toString( archiver.getOverrideDirectoryMode(), 8 ) + " file perms: "
+                + Integer.toString( archiver.getOverrideFileMode(), 8 )
+                + ( fileSet.getLineEnding() == null ? "" : " lineEndings: " + fileSet.getLineEnding() ) );
         }
 
         logger.debug( "The archive base directory is '" + archiveBaseDir + "'" );
@@ -132,25 +130,20 @@
 
         if ( fileSetDir.exists() )
         {
-            try
+            InputStreamTransformer fileSetTransformers = ReaderFormatter.getFileSetTransformers( configSource, fileSet.isFiltered(),
+                                                                                                 fileSet.getLineEnding() );
+            if (fileSetTransformers == null)
             {
-                fileSetDir = fileSetFormatter.formatFileSetForAssembly( fileSetDir, fileSet );
-            }
-            catch ( final IOException e )
-            {
-                throw new ArchiveCreationException( "Error fixing file-set line endings for assembly: "
-                                + e.getMessage(), e );
+                logger.debug( "NOT reformatting any files in " + fileSetDir );
             }
 
-            logger.debug( "Adding file-set from directory: '" + fileSetDir.getAbsolutePath()
-                            + "'\nassembly output directory is: \'" + destDirectory + "\'" );
-
-            if (fileSetDir.getPath().equals( File.separator ))
+            if ( fileSetDir.getPath().equals( File.separator ) )
             {
-                throw new AssemblyFormattingException( "Your assembly descriptor specifies a directory of " + File.separator +
-                   ", which is your *entire* file system.\nThese are not the files you are looking for");
+                throw new AssemblyFormattingException( "Your assembly descriptor specifies a directory of "
+                    + File.separator
+                    + ", which is your *entire* file system.\nThese are not the files you are looking for" );
             }
-            final AddDirectoryTask task = new AddDirectoryTask( fileSetDir );
+            final AddDirectoryTask task = new AddDirectoryTask( fileSetDir, fileSetTransformers );
 
             final int dirMode = TypeConversionUtils.modeToInt( fileSet.getDirectoryMode(), logger );
             if ( dirMode != -1 )
@@ -174,17 +167,16 @@
             task.setIncludes( fileSet.getIncludes() );
             task.setOutputDirectory( destDirectory );
 
-            task.execute( archiver, configSource );
+            task.execute( archiver );
         }
     }
 
-    protected File getFileSetDirectory( final FileSet fileSet, final File basedir, final File archiveBaseDir )
+    File getFileSetDirectory( final FileSet fileSet, final File basedir, final File archiveBaseDir )
         throws ArchiveCreationException, AssemblyFormattingException
     {
         String sourceDirectory = fileSet.getDirectory();
 
-        if ( sourceDirectory == null || sourceDirectory.trim()
-                                                       .length() < 1 )
+        if ( sourceDirectory == null || sourceDirectory.trim().length() < 1 )
         {
             sourceDirectory = basedir.getAbsolutePath();
         }
@@ -226,11 +218,6 @@
         this.project = project;
     }
 
-    public MavenProject getModuleProject()
-    {
-        return moduleProject;
-    }
-
     public void setModuleProject( final MavenProject moduleProject )
     {
         this.moduleProject = moduleProject;
diff --git a/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java b/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java
index 15ffb60..583b2f7 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java
@@ -30,7 +30,6 @@
 import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
 import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.resolver.ArtifactCollector;
 import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
 import org.apache.maven.artifact.resolver.ArtifactResolutionException;
 import org.apache.maven.artifact.resolver.ArtifactResolutionResult;
@@ -38,7 +37,6 @@
 import org.apache.maven.artifact.resolver.MultipleArtifactsNotFoundException;
 import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
 import org.apache.maven.plugin.assembly.archive.phase.ModuleSetAssemblyPhase;
 import org.apache.maven.plugin.assembly.model.Assembly;
@@ -46,6 +44,8 @@
 import org.apache.maven.plugin.assembly.model.ModuleBinaries;
 import org.apache.maven.plugin.assembly.model.ModuleSet;
 import org.apache.maven.plugin.assembly.model.Repository;
+import org.apache.maven.plugin.assembly.resolved.AssemblyId;
+import org.apache.maven.plugin.assembly.resolved.ResolvedModuleSet;
 import org.apache.maven.plugin.assembly.utils.FilterUtils;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.project.artifact.InvalidDependencyVersionException;
@@ -74,41 +74,33 @@
     @Requirement
     private ArtifactFactory factory;
 
-    @Requirement
-    private ArtifactCollector collector;
-
     public DefaultDependencyResolver()
     {
         // for plexus init
     }
 
     protected DefaultDependencyResolver( final ArtifactResolver resolver, final ArtifactMetadataSource metadataSource,
-                                         final ArtifactFactory factory, final ArtifactCollector collector,
-                                         final Logger logger )
+                                         final ArtifactFactory factory, final Logger logger )
     {
         this.resolver = resolver;
         this.metadataSource = metadataSource;
         this.factory = factory;
-        this.collector = collector;
-
         enableLogging( logger );
     }
 
-    public void resolve( final Assembly assembly, final AssemblerConfigurationSource configSource,
-                         final AssemblyContext context )
+    public Set<Artifact> resolve( final Assembly assembly, final AssemblerConfigurationSource configSource )
         throws DependencyResolutionException
     {
         final MavenProject currentProject = configSource.getProject();
 
         final ResolutionManagementInfo info = new ResolutionManagementInfo( currentProject );
-        getRepositoryResolutionRequirements( assembly, info, currentProject );
-        getDependencySetResolutionRequirements( assembly, assembly.getDependencySets(), info, currentProject );
-        getModuleSetResolutionRequirements( assembly, info, configSource );
+        updateRepositoryResolutionRequirements( assembly, info );
+        updateDependencySetResolutionRequirements( assembly.getDependencySets(), info,
+                                                   AssemblyId.createAssemblyId( assembly ), currentProject );
 
         if ( !info.isResolutionRequired() )
         {
-            context.setResolvedArtifacts( new HashSet<Artifact>() );
-            return;
+            return new HashSet<Artifact>();
         }
 
         final List<ArtifactRepository> repos =
@@ -126,33 +118,77 @@
             artifacts = resolveNonTransitively( assembly, artifacts, configSource, repos );
         }
 
-        context.setResolvedArtifacts( artifacts );
+        return artifacts;
     }
 
-    protected Set<Artifact> resolveNonTransitively( final Assembly assembly, final Set<Artifact> dependencyArtifacts,
-                                                    final AssemblerConfigurationSource configSource,
-                                                    final List<ArtifactRepository> repos )
+    public ResolvedModuleSet resolve( final Assembly assembly, ModuleSet moduleSet,
+                                      final AssemblerConfigurationSource configSource )
+        throws DependencyResolutionException
+    {
+        final MavenProject currentProject = configSource.getProject();
+
+        final ResolutionManagementInfo info = new ResolutionManagementInfo( currentProject );
+        updateRepositoryResolutionRequirements( assembly, info );
+        final AssemblyId assemblyId = AssemblyId.createAssemblyId( assembly );
+        updateDependencySetResolutionRequirements( assembly.getDependencySets(), info, assemblyId, currentProject );
+        updateModuleSetResolutionRequirements( assemblyId, moduleSet, info, configSource );
+
+        ResolvedModuleSet base = ResolvedModuleSet.createResolvedModuleSet( moduleSet );
+        if ( !info.isResolutionRequired() )
+        {
+            return base.withArtifacts( new HashSet<Artifact>() );
+        }
+
+        final List<ArtifactRepository> repos =
+            aggregateRemoteArtifactRepositories( configSource.getRemoteRepositories(), info.getEnabledProjects() );
+
+        Set<Artifact> artifacts = info.getArtifacts();
+        if ( info.isResolvedTransitively() )
+        {
+            getLogger().debug( "Resolving project dependencies transitively." );
+            artifacts = resolveTransitively( artifacts, repos, info, configSource );
+        }
+        else
+        {
+            getLogger().debug( "Resolving project dependencies ONLY. Transitive dependencies WILL NOT be included in the results." );
+            artifacts = resolveNonTransitively( assembly, artifacts, configSource, repos );
+        }
+
+        return base.withArtifacts( artifacts );
+    }
+
+    Set<Artifact> resolveNonTransitively( final Assembly assembly, final Set<Artifact> dependencyArtifacts,
+                                          final AssemblerConfigurationSource configSource,
+                                          final List<ArtifactRepository> repos )
         throws DependencyResolutionException
     {
 
         final List<Artifact> missing = new ArrayList<Artifact>();
         final Set<Artifact> resolved = new LinkedHashSet<Artifact>();
-        for (final Artifact depArtifact : dependencyArtifacts) {
-            try {
-                resolver.resolve(depArtifact, repos, configSource.getLocalRepository());
-                resolved.add(depArtifact);
-            } catch (final ArtifactResolutionException e) {
-                if (getLogger().isDebugEnabled()) {
-                    getLogger().debug("Failed to resolve: " + depArtifact.getId() + " for assembly: "
-                            + assembly.getId());
+        for ( final Artifact depArtifact : dependencyArtifacts )
+        {
+            try
+            {
+                resolver.resolve( depArtifact, repos, configSource.getLocalRepository() );
+                resolved.add( depArtifact );
+            }
+            catch ( final ArtifactResolutionException e )
+            {
+                if ( getLogger().isDebugEnabled() )
+                {
+                    getLogger().debug( "Failed to resolve: " + depArtifact.getId() + " for assembly: "
+                                           + assembly.getId() );
                 }
-                missing.add(depArtifact);
-            } catch (final ArtifactNotFoundException e) {
-                if (getLogger().isDebugEnabled()) {
-                    getLogger().debug("Failed to resolve: " + depArtifact.getId() + " for assembly: "
-                            + assembly.getId());
+                missing.add( depArtifact );
+            }
+            catch ( final ArtifactNotFoundException e )
+            {
+                if ( getLogger().isDebugEnabled() )
+                {
+                    getLogger().debug( "Failed to resolve: " + depArtifact.getId() + " for assembly: "
+                                           + assembly.getId() );
                 }
-                missing.add(depArtifact);
+                missing.add( depArtifact );
             }
         }
 
@@ -207,9 +243,7 @@
         return result.getArtifacts();
     }
 
-    protected void getRepositoryResolutionRequirements( final Assembly assembly,
-                                                        final ResolutionManagementInfo requirements,
-                                                        final MavenProject... project )
+    void updateRepositoryResolutionRequirements( final Assembly assembly, final ResolutionManagementInfo requirements )
     {
         final List<Repository> repositories = assembly.getRepositories();
 
@@ -223,9 +257,8 @@
         }
     }
 
-    protected void getModuleSetResolutionRequirements( final Assembly assembly,
-                                                       final ResolutionManagementInfo requirements,
-                                                       final AssemblerConfigurationSource configSource )
+    void updateModuleSetResolutionRequirements( final Assembly assembly, final ResolutionManagementInfo requirements,
+                                                final AssemblerConfigurationSource configSource )
         throws DependencyResolutionException
     {
         final List<ModuleSet> moduleSets = assembly.getModuleSets();
@@ -234,54 +267,62 @@
         {
             for ( final ModuleSet set : moduleSets )
             {
-                final ModuleBinaries binaries = set.getBinaries();
-                if ( binaries != null )
+                updateModuleSetResolutionRequirements( AssemblyId.createAssemblyId( assembly.getId() ), set,
+                                                       requirements, configSource );
+            }
+        }
+    }
+
+    void updateModuleSetResolutionRequirements( AssemblyId assemblyId, ModuleSet set,
+                                                final ResolutionManagementInfo requirements,
+                                                final AssemblerConfigurationSource configSource )
+        throws DependencyResolutionException
+    {
+        final ModuleBinaries binaries = set.getBinaries();
+        if ( binaries != null )
+        {
+            Set<MavenProject> projects;
+            try
+            {
+                projects = ModuleSetAssemblyPhase.getModuleProjects( set, configSource, getLogger() );
+            }
+            catch ( final ArchiveCreationException e )
+            {
+                throw new DependencyResolutionException( "Error determining project-set for moduleSet with binaries.",
+                                                         e );
+            }
+
+            if ( !projects.isEmpty() )
+            {
+                for ( final MavenProject p : projects )
                 {
-                    Set<MavenProject> projects;
-                    try
-                    {
-                        projects = ModuleSetAssemblyPhase.getModuleProjects( set, configSource, getLogger() );
-                    }
-                    catch ( final ArchiveCreationException e )
-                    {
-                        throw new DependencyResolutionException(
-                                                                 "Error determining project-set for moduleSet with binaries.",
-                                                                 e );
-                    }
+                    requirements.enableProjectResolution( p );
 
-                    if ( projects != null && !projects.isEmpty() )
+                    if ( p.getArtifact() == null )
                     {
-                        for ( final MavenProject p : projects )
-                        {
-                            requirements.enableProjectResolution( p );
-
-                            if ( p.getArtifact() == null )
-                            {
-                                // TODO: such a call in MavenMetadataSource too - packaging not really the intention of
-                                // type
-                                final Artifact artifact =
-                                    factory.createBuildArtifact( p.getGroupId(), p.getArtifactId(), p.getVersion(),
-                                                                 p.getPackaging() );
-                                p.setArtifact( artifact );
-                            }
-                        }
-                    }
-
-                    if ( binaries.isIncludeDependencies() )
-                    {
-                        getDependencySetResolutionRequirements( assembly,
-                                                                ModuleSetAssemblyPhase.getDependencySets( binaries ),
-                                                                requirements, projects.toArray(new MavenProject[projects.size()]));
+                        // TODO: such a call in MavenMetadataSource too - packaging not really the intention of
+                        // type
+                        final Artifact artifact =
+                            factory.createBuildArtifact( p.getGroupId(), p.getArtifactId(), p.getVersion(),
+                                                         p.getPackaging() );
+                        p.setArtifact( artifact );
                     }
                 }
             }
+
+            if ( binaries.isIncludeDependencies() )
+            {
+                updateDependencySetResolutionRequirements( ModuleSetAssemblyPhase.getDependencySets( binaries ),
+                                                           requirements, assemblyId,
+                                                           projects.toArray( new MavenProject[projects.size()] ) );
+            }
         }
     }
 
     @SuppressWarnings( "unchecked" )
-    protected void getDependencySetResolutionRequirements( final Assembly assembly, final List<DependencySet> depSets,
-                                                           final ResolutionManagementInfo requirements,
-                                                           final MavenProject... projects )
+    void updateDependencySetResolutionRequirements( final List<DependencySet> depSets,
+                                                    final ResolutionManagementInfo requirements, AssemblyId assemblyId,
+                                                    final MavenProject... projects )
         throws DependencyResolutionException
     {
         if ( depSets != null && !depSets.isEmpty() )
@@ -290,6 +331,7 @@
 
             for ( final DependencySet set : depSets )
             {
+                // Surely this must be a bug, if there's multiple depSets with different isUseTransitiveDependencies
                 requirements.setResolvedTransitively( set.isUseTransitiveDependencies() );
 
                 enableScope( set.getScope(), requirements );
@@ -314,7 +356,7 @@
                     {
                         throw new DependencyResolutionException(
                                                                  "Failed to create dependency artifacts for resolution. Assembly: "
-                                                                     + assembly.getId(), e );
+                                                                     + assemblyId, e );
                     }
                 }
 
@@ -350,8 +392,8 @@
     }
 
     @SuppressWarnings( "unchecked" )
-    protected List<ArtifactRepository> aggregateRemoteArtifactRepositories( final List<ArtifactRepository> remoteRepositories,
-                                                                            final Set<MavenProject> projects )
+    List<ArtifactRepository> aggregateRemoteArtifactRepositories( final List<ArtifactRepository> remoteRepositories,
+                                                                  final Set<MavenProject> projects )
     {
         final List<List<ArtifactRepository>> repoLists = new ArrayList<List<ArtifactRepository>>();
 
@@ -364,12 +406,16 @@
         final List<ArtifactRepository> remoteRepos = new ArrayList<ArtifactRepository>();
         final Set<String> encounteredUrls = new HashSet<String>();
 
-        for (final List<ArtifactRepository> repositoryList : repoLists) {
-            if ((repositoryList != null) && !repositoryList.isEmpty()) {
-                for (final ArtifactRepository repo : repositoryList) {
-                    if (!encounteredUrls.contains(repo.getUrl())) {
-                        remoteRepos.add(repo);
-                        encounteredUrls.add(repo.getUrl());
+        for ( final List<ArtifactRepository> repositoryList : repoLists )
+        {
+            if ( ( repositoryList != null ) && !repositoryList.isEmpty() )
+            {
+                for ( final ArtifactRepository repo : repositoryList )
+                {
+                    if ( !encounteredUrls.contains( repo.getUrl() ) )
+                    {
+                        remoteRepos.add( repo );
+                        encounteredUrls.add( repo.getUrl() );
                     }
                 }
             }
@@ -378,59 +424,4 @@
         return remoteRepos;
     }
 
-    protected ArtifactResolver getArtifactResolver()
-    {
-        return resolver;
-    }
-
-    protected DefaultDependencyResolver setArtifactResolver( final ArtifactResolver resolver )
-    {
-        this.resolver = resolver;
-
-        return this;
-    }
-
-    protected ArtifactMetadataSource getArtifactMetadataSource()
-    {
-        return metadataSource;
-    }
-
-    protected DefaultDependencyResolver setArtifactMetadataSource( final ArtifactMetadataSource metadataSource )
-    {
-        this.metadataSource = metadataSource;
-
-        return this;
-    }
-
-    protected ArtifactFactory getArtifactFactory()
-    {
-        return factory;
-    }
-
-    protected DefaultDependencyResolver setArtifactFactory( final ArtifactFactory factory )
-    {
-        this.factory = factory;
-
-        return this;
-    }
-
-    protected ArtifactCollector getArtifactCollector()
-    {
-        return collector;
-    }
-
-    protected DefaultDependencyResolver setArtifactCollector( final ArtifactCollector collector )
-    {
-        this.collector = collector;
-
-        return this;
-    }
-
-    protected DefaultDependencyResolver setLogger( final Logger logger )
-    {
-        enableLogging( logger );
-
-        return this;
-    }
-
 }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolutionException.java b/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolutionException.java
index 620c567..52f219f 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolutionException.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolutionException.java
@@ -33,9 +33,4 @@
         super( message, error );
     }
 
-    public DependencyResolutionException( final String message )
-    {
-        super( message );
-    }
-
 }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java b/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java
index 7c63183..57ce03a 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java
@@ -19,14 +19,18 @@
  * under the License.
  */
 
+import org.apache.maven.artifact.Artifact;
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
 import org.apache.maven.plugin.assembly.model.Assembly;
+import org.apache.maven.plugin.assembly.model.ModuleSet;
+import org.apache.maven.plugin.assembly.resolved.ResolvedModuleSet;
+
+import java.util.Set;
 
 /**
  * Convenience component that aids in the resolution of dependency artifacts, according to various configurations such
  * as transitivity flag and scope.
- * 
+ *
  * @version $Id$
  */
 public interface DependencyResolver
@@ -35,7 +39,10 @@
     /**
      * Resolve the project dependencies, according to the supplied configuration.
      */
-    void resolve( Assembly assembly, AssemblerConfigurationSource configSource, AssemblyContext context )
+    Set<Artifact> resolve( Assembly assembly, AssemblerConfigurationSource configSource )
         throws DependencyResolutionException;
 
+    ResolvedModuleSet resolve( final Assembly assembly, ModuleSet moduleSet,
+                           final AssemblerConfigurationSource configSource )
+        throws DependencyResolutionException;
 }
\ No newline at end of file
diff --git a/src/main/java/org/apache/maven/plugin/assembly/artifact/ResolutionManagementInfo.java b/src/main/java/org/apache/maven/plugin/assembly/artifact/ResolutionManagementInfo.java
index 56f5039..2237102 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/artifact/ResolutionManagementInfo.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/artifact/ResolutionManagementInfo.java
@@ -129,8 +129,4 @@
         artifacts.addAll( a );
     }
 
-    void addArtifact( final Artifact a )
-    {
-        artifacts.add( a );
-    }
 }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/filter/AbstractLineAggregatingHandler.java b/src/main/java/org/apache/maven/plugin/assembly/filter/AbstractLineAggregatingHandler.java
index 2316e3d..befac36 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/filter/AbstractLineAggregatingHandler.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/filter/AbstractLineAggregatingHandler.java
@@ -39,7 +39,7 @@
 import java.util.List;
 import java.util.Map;
 
-public abstract class AbstractLineAggregatingHandler
+abstract class AbstractLineAggregatingHandler
     implements ContainerDescriptorHandler
 {
 
@@ -51,7 +51,7 @@
 
     protected abstract boolean fileMatches( final FileInfo fileInfo );
 
-    protected String getEncoding()
+    String getEncoding()
     {
         return "UTF-8";
     }
@@ -72,7 +72,7 @@
         addToArchive( archiver );
     }
 
-    protected void addToArchive( final Archiver archiver )
+    void addToArchive( final Archiver archiver )
         throws ArchiverException
     {
         for ( final Map.Entry<String, List<String>> entry : catalog.entrySet() )
@@ -127,9 +127,7 @@
             return true;
         }
 
-        String name = fileInfo.getName();
-        name = AssemblyFileUtils.normalizePath( name );
-        name = name.replace( File.separatorChar, '/' );
+        String name = AssemblyFileUtils.normalizeFileInfo(fileInfo );
 
         if ( fileInfo.isFile() && fileMatches( fileInfo ) )
         {
@@ -150,7 +148,7 @@
         return true;
     }
 
-    protected void readLines( final FileInfo fileInfo, final List<String> lines )
+    void readLines( final FileInfo fileInfo, final List<String> lines )
         throws IOException
     {
         BufferedReader reader = null;
diff --git a/src/main/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilter.java b/src/main/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilter.java
index acae494..f386e86 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilter.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilter.java
@@ -37,6 +37,7 @@
 import org.codehaus.plexus.archiver.ArchiverException;
 import org.codehaus.plexus.archiver.ResourceIterator;
 import org.codehaus.plexus.archiver.UnArchiver;
+import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.components.io.fileselectors.FileInfo;
 import org.codehaus.plexus.util.IOUtil;
 import org.codehaus.plexus.util.xml.Xpp3Dom;
@@ -50,19 +51,21 @@
  * @author <a href="mailto:brett@apache.org">Brett Porter</a>
  * @version $Id$
  */
+@Component( role = ContainerDescriptorHandler.class, hint = "plexus", instantiationStrategy = "per-lookup" )
 public class ComponentsXmlArchiverFileFilter
     implements ContainerDescriptorHandler
 {
     // [jdcasey] Switched visibility to protected to allow testing. Also, because this class isn't final, it should
     // allow
     // some minimal access to the components accumulated for extending classes.
-    protected Map<String, Xpp3Dom> components;
+    Map<String, Xpp3Dom> components;
 
     private boolean excludeOverride = false;
 
     public static final String COMPONENTS_XML_PATH = "META-INF/plexus/components.xml";
 
-    protected void addComponentsXml( final Reader componentsReader ) throws XmlPullParserException, IOException
+    void addComponentsXml( final Reader componentsReader )
+        throws XmlPullParserException, IOException
     {
         Xpp3Dom newDom = Xpp3DomBuilder.build( componentsReader );
 
@@ -75,22 +78,26 @@
         {
             final Xpp3Dom[] children = newDom.getChildren();
 
-            for (final Xpp3Dom component : children) {
-                if (components == null) {
+            for ( final Xpp3Dom component : children )
+            {
+                if ( components == null )
+                {
                     components = new LinkedHashMap<String, Xpp3Dom>();
                 }
 
-                final String role = component.getChild("role")
-                        .getValue();
-                final Xpp3Dom child = component.getChild("role-hint");
+                final String role = component.getChild( "role" ).getValue();
+                final Xpp3Dom child = component.getChild( "role-hint" );
                 final String roleHint = child != null ? child.getValue() : "";
 
                 final String key = role + roleHint;
-                if (!components.containsKey(key)) {
-                    System.out.println("Adding " + key);
-                    components.put(key, component);
-                } else {
-                    System.out.println("Component: " + key + " is already defined. Skipping.");
+                if ( !components.containsKey( key ) )
+                {
+                    System.out.println( "Adding " + key );
+                    components.put( key, component );
+                }
+                else
+                {
+                    System.out.println( "Component: " + key + " is already defined. Skipping." );
                 }
             }
         }
@@ -112,7 +119,8 @@
     // }
     // }
 
-    private void addToArchive( final Archiver archiver ) throws IOException, ArchiverException
+    private void addToArchive( final Archiver archiver )
+        throws IOException, ArchiverException
     {
         if ( components != null )
         {
@@ -127,8 +135,9 @@
                 final Xpp3Dom componentDom = new Xpp3Dom( "components" );
                 dom.addChild( componentDom );
 
-                for (final Xpp3Dom component : components.values()) {
-                    componentDom.addChild(component);
+                for ( final Xpp3Dom component : components.values() )
+                {
+                    componentDom.addChild( component );
                 }
 
                 Xpp3DomWriter.write( fileWriter, dom );
@@ -146,7 +155,8 @@
         }
     }
 
-    public void finalizeArchiveCreation( final Archiver archiver ) throws ArchiverException
+    public void finalizeArchiveCreation( final Archiver archiver )
+        throws ArchiverException
     {
         // this will prompt the isSelected() call, below, for all resources added to the archive.
         // FIXME: This needs to be corrected in the AbstractArchiver, where
@@ -178,7 +188,8 @@
         return null;
     }
 
-    public boolean isSelected( final FileInfo fileInfo ) throws IOException
+    public boolean isSelected( final FileInfo fileInfo )
+        throws IOException
     {
         if ( fileInfo.isFile() )
         {
@@ -187,8 +198,7 @@
                 return true;
             }
 
-            String entry = fileInfo.getName()
-                                   .replace( '\\', '/' );
+            String entry = fileInfo.getName().replace( '\\', '/' );
 
             if ( entry.startsWith( "/" ) )
             {
@@ -205,7 +215,7 @@
                     stream = fileInfo.getContents();
                     // TODO use ReaderFactory.newXmlReader() when plexus-utils is upgraded to 1.4.5+
                     reader = new InputStreamReader( stream, "UTF-8" );
-                    addComponentsXml( new BufferedReader( reader, 8192 ));
+                    addComponentsXml( new BufferedReader( reader, 8192 ) );
                 }
                 catch ( final XmlPullParserException e )
                 {
@@ -234,7 +244,8 @@
         }
     }
 
-    public void finalizeArchiveExtraction( final UnArchiver unarchiver ) throws ArchiverException
+    public void finalizeArchiveExtraction( final UnArchiver unarchiver )
+        throws ArchiverException
     {
     }
 
diff --git a/src/main/java/org/apache/maven/plugin/assembly/filter/MetaInfServicesHandler.java b/src/main/java/org/apache/maven/plugin/assembly/filter/MetaInfServicesHandler.java
index 3ec400a..48580b4 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/filter/MetaInfServicesHandler.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/filter/MetaInfServicesHandler.java
@@ -22,7 +22,7 @@
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.components.io.fileselectors.FileInfo;
 
-@Component( role = ContainerDescriptorHandler.class, hint = "metaInf-services" )
+@Component( role = ContainerDescriptorHandler.class, hint = "metaInf-services", instantiationStrategy = "per-lookup" )
 public class MetaInfServicesHandler
     extends AbstractLineAggregatingHandler
 {
diff --git a/src/main/java/org/apache/maven/plugin/assembly/filter/MetaInfSpringHandler.java b/src/main/java/org/apache/maven/plugin/assembly/filter/MetaInfSpringHandler.java
index 90c9464..a403a79 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/filter/MetaInfSpringHandler.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/filter/MetaInfSpringHandler.java
@@ -22,7 +22,7 @@
 import org.codehaus.plexus.component.annotations.Component;
 import org.codehaus.plexus.components.io.fileselectors.FileInfo;
 
-@Component( role = ContainerDescriptorHandler.class, hint = "metaInf-spring" )
+@Component( role = ContainerDescriptorHandler.class, hint = "metaInf-spring", instantiationStrategy = "per-lookup" )
 public class MetaInfSpringHandler
     extends AbstractLineAggregatingHandler
 {
diff --git a/src/main/java/org/apache/maven/plugin/assembly/filter/SimpleAggregatingDescriptorHandler.java b/src/main/java/org/apache/maven/plugin/assembly/filter/SimpleAggregatingDescriptorHandler.java
index 16bbc78..8dd28a9 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/filter/SimpleAggregatingDescriptorHandler.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/filter/SimpleAggregatingDescriptorHandler.java
@@ -19,10 +19,23 @@
  * under the License.
  */
 
+import org.apache.maven.plugin.assembly.utils.AssemblyFileUtils;
+import org.codehaus.plexus.archiver.Archiver;
+import org.codehaus.plexus.archiver.ArchiverException;
+import org.codehaus.plexus.archiver.UnArchiver;
+import org.codehaus.plexus.component.annotations.Component;
+import org.codehaus.plexus.components.io.fileselectors.FileInfo;
+import org.codehaus.plexus.logging.LogEnabled;
+import org.codehaus.plexus.logging.Logger;
+import org.codehaus.plexus.logging.console.ConsoleLogger;
+import org.codehaus.plexus.util.IOUtil;
+
+import javax.annotation.Nonnull;
 import java.io.File;
-import java.io.FileWriter;
+import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStreamReader;
+import java.io.OutputStreamWriter;
 import java.io.Reader;
 import java.io.StringWriter;
 import java.io.Writer;
@@ -31,19 +44,10 @@
 import java.util.Date;
 import java.util.List;
 
-import org.apache.maven.plugin.assembly.utils.AssemblyFileUtils;
-import org.codehaus.plexus.archiver.Archiver;
-import org.codehaus.plexus.archiver.ArchiverException;
-import org.codehaus.plexus.archiver.UnArchiver;
-import org.codehaus.plexus.components.io.fileselectors.FileInfo;
-import org.codehaus.plexus.logging.LogEnabled;
-import org.codehaus.plexus.logging.Logger;
-import org.codehaus.plexus.logging.console.ConsoleLogger;
-import org.codehaus.plexus.util.IOUtil;
-
 /**
  * @version $Id$
  */
+@Component( role = ContainerDescriptorHandler.class, hint = "file-aggregator", instantiationStrategy = "per-lookup" )
 public class SimpleAggregatingDescriptorHandler
     implements ContainerDescriptorHandler, LogEnabled
 {
@@ -54,6 +58,7 @@
 
     private String outputPath;
 
+    @SuppressWarnings( "FieldCanBeLocal" )
     private final String commentChars = "#";
 
     // calculated, temporary values.
@@ -68,7 +73,8 @@
 
     private Logger logger;
 
-    public void finalizeArchiveCreation( final Archiver archiver ) throws ArchiverException
+    public void finalizeArchiveCreation( final Archiver archiver )
+        throws ArchiverException
     {
         checkConfig();
 
@@ -76,7 +82,7 @@
         {
             throw new ArchiverException(
                                          "Cannot write aggregated properties to a directory. You must specify a file name in the outputPath configuration for this handler. (handler: "
-                                                         + getClass().getName() );
+                                             + getClass().getName() );
         }
 
         if ( outputPath.startsWith( "/" ) )
@@ -93,7 +99,8 @@
         overrideFilterAction = false;
     }
 
-    private File writePropertiesFile() throws ArchiverException
+    private File writePropertiesFile()
+        throws ArchiverException
     {
         File f;
 
@@ -103,13 +110,17 @@
             f = File.createTempFile( "maven-assembly-plugin", "tmp" );
             f.deleteOnExit();
 
-            // FIXME if it is a properties file, encoding should be ISO-8859-1
-            writer = new FileWriter( f ); // platform encoding
+
+            boolean isProperty = AssemblyFileUtils.isPropertyFile(f);
+            FileOutputStream fos = new FileOutputStream( f );
+            writer = isProperty ? new OutputStreamWriter( fos,  "ISO-8859-1")
+                : new OutputStreamWriter( fos); // Still platform encoding
 
             writer.write( commentChars + " Aggregated on " + new Date() + " from: " );
 
-            for (final String filename : filenames) {
-                writer.write("\n" + commentChars + " " + filename);
+            for ( final String filename : filenames )
+            {
+                writer.write( "\n" + commentChars + " " + filename );
             }
 
             writer.write( "\n\n" );
@@ -119,7 +130,7 @@
         catch ( final IOException e )
         {
             throw new ArchiverException( "Error adding aggregated properties to finalize archive creation. Reason: "
-                            + e.getMessage(), e );
+                + e.getMessage(), e );
         }
         finally
         {
@@ -129,7 +140,8 @@
         return f;
     }
 
-    public void finalizeArchiveExtraction( final UnArchiver unarchiver ) throws ArchiverException
+    public void finalizeArchiveExtraction( final UnArchiver unarchiver )
+        throws ArchiverException
     {
     }
 
@@ -140,7 +152,8 @@
         return Collections.singletonList( outputPath );
     }
 
-    public boolean isSelected( final FileInfo fileInfo ) throws IOException
+    public boolean isSelected( final @Nonnull FileInfo fileInfo )
+        throws IOException
     {
         checkConfig();
 
@@ -150,10 +163,7 @@
             return true;
         }
 
-        String name = fileInfo.getName();
-        name = AssemblyFileUtils.normalizePath( name );
-
-        name = name.replace( File.separatorChar, '/' );
+        String name = AssemblyFileUtils.normalizeFileInfo( fileInfo );
 
         if ( fileInfo.isFile() && name.matches( filePattern ) )
         {
@@ -175,14 +185,17 @@
         }
     }
 
-    private void readProperties( final FileInfo fileInfo ) throws IOException
+    private void readProperties( final FileInfo fileInfo )
+        throws IOException
     {
         final StringWriter writer = new StringWriter();
         Reader reader = null;
         try
         {
-            // FIXME if it is a properties file, encoding should be ISO-8859-1
-            reader = new InputStreamReader( fileInfo.getContents() ); // platform encoding
+            boolean isProperty = AssemblyFileUtils.isPropertyFile(fileInfo.getName());
+
+            reader = isProperty ? new InputStreamReader( fileInfo.getContents(), "ISO-8859-1" ) :
+            new InputStreamReader( fileInfo.getContents() ); // platform encoding
 
             IOUtil.copy( reader, writer );
         }
@@ -212,21 +225,25 @@
         this.logger = logger;
     }
 
+    @SuppressWarnings( "UnusedDeclaration" )
     public String getFilePattern()
     {
         return filePattern;
     }
 
+    @SuppressWarnings( "UnusedDeclaration" )
     public void setFilePattern( final String filePattern )
     {
         this.filePattern = filePattern;
     }
 
+    @SuppressWarnings( "UnusedDeclaration" )
     public String getOutputPath()
     {
         return outputPath;
     }
 
+    @SuppressWarnings( "UnusedDeclaration" )
     public void setOutputPath( final String outputPath )
     {
         this.outputPath = outputPath;
diff --git a/src/main/java/org/apache/maven/plugin/assembly/format/FileFormatter.java b/src/main/java/org/apache/maven/plugin/assembly/format/FileFormatter.java
index bf00837..11813d4 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/format/FileFormatter.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/format/FileFormatter.java
@@ -19,24 +19,26 @@
  * under the License.
  */
 
-import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.utils.AssemblyFileUtils;
-import org.apache.maven.shared.filtering.MavenFileFilterRequest;
-import org.apache.maven.shared.filtering.MavenFilteringException;
-import org.codehaus.plexus.logging.Logger;
-import org.codehaus.plexus.util.FileUtils;
-import org.codehaus.plexus.util.IOUtil;
-import org.codehaus.plexus.util.ReaderFactory;
-import org.codehaus.plexus.util.StringUtils;
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Locale;
 
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.io.Reader;
-import java.util.Locale;
+import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
+import org.apache.maven.plugin.assembly.utils.AssemblyFileUtils;
+import org.apache.maven.plugin.assembly.utils.LineEndings;
+import org.apache.maven.plugin.assembly.utils.LineEndingsUtils;
+import org.apache.maven.shared.filtering.MavenFileFilterRequest;
+import org.apache.maven.shared.filtering.MavenFilteringException;
+import org.codehaus.plexus.logging.Logger;
+import org.codehaus.plexus.util.FileUtils;
+import org.codehaus.plexus.util.ReaderFactory;
+import org.codehaus.plexus.util.StringUtils;
 
 /**
  * @version $Id$
@@ -54,16 +56,10 @@
         this.logger = logger;
     }
 
-    public File format( File source, boolean filter, String lineEnding, String encoding )
+    public File format( @Nonnull File source, boolean filter, String lineEnding, String encoding )
         throws AssemblyFormattingException
     {
-        return format( source, filter, lineEnding, configSource.getTemporaryRootDirectory(), encoding );
-    }
-
-    public File format( @Nonnull File source, boolean filter, String lineEnding, @Nullable File tempRoot,
-                        String encoding )
-        throws AssemblyFormattingException
-    {
+        File tempRoot = configSource.getTemporaryRootDirectory();
         AssemblyFileUtils.verifyTempDirectoryAvailability( tempRoot );
 
         File result = source;
@@ -71,38 +67,65 @@
         if ( StringUtils.isEmpty( encoding ) && filter )
         {
             logger.warn( "File encoding has not been set, using platform encoding " + ReaderFactory.FILE_ENCODING
-                             + ", i.e. build is platform dependent!" );
+                + ", i.e. build is platform dependent!" );
         }
 
         if ( filter )
         {
-            result = doFileFilter( source, tempRoot, encoding, configSource.getEscapeString() );
+            result =
+                doFileFilter( source, tempRoot, encoding, configSource.getEscapeString(), configSource.getDelimiters() );
         }
 
-        String lineEndingChars = AssemblyFileUtils.getLineEndingCharacters( lineEnding );
-        if ( lineEndingChars != null )
+        LineEndings lineEnding1 = LineEndingsUtils.getLineEnding( lineEnding );
+        if ( !LineEndings.keep.equals( lineEnding1 ) )
         {
-            result = formatLineEndings( lineEndingChars, result, tempRoot, encoding );
+            result = formatLineEndings( lineEnding1, result, tempRoot, encoding );
         }
 
         return result;
     }
 
-    private File doFileFilter( @Nonnull File source, @Nullable File tempRoot, String encoding, String escapeString )
+    private File doFileFilter( @Nonnull File source, @Nullable File tempRoot, String encoding, String escapeString,
+                               List<String> delimiters )
         throws AssemblyFormattingException
     {
         try
         {
             File target = FileUtils.createTempFile( source.getName() + ".", ".filtered", tempRoot );
 
-            //@todo this test can be improved
+            // @todo this test can be improved
             boolean isPropertiesFile = source.getName().toLowerCase( Locale.ENGLISH ).endsWith( ".properties" );
 
             MavenFileFilterRequest filterRequest =
                 new MavenFileFilterRequest( source, target, true, configSource.getProject(), configSource.getFilters(),
                                             isPropertiesFile, encoding, configSource.getMavenSession(), null );
             filterRequest.setEscapeString( escapeString );
-            filterRequest.setInjectProjectBuildFilters( true );
+
+            // if these are NOT set, just use the defaults, which are '${*}' and '@'.
+            if ( delimiters != null && !delimiters.isEmpty() )
+            {
+                LinkedHashSet<String> delims = new LinkedHashSet<String>();
+                for ( String delim : delimiters )
+                {
+                    if ( delim == null )
+                    {
+                        // FIXME: ${filter:*} could also trigger this condition. Need a better long-term solution.
+                        delims.add( "${*}" );
+                    }
+                    else
+                    {
+                        delims.add( delim );
+                    }
+                }
+
+                filterRequest.setDelimiters( delims );
+            }
+            else
+            {
+                filterRequest.setDelimiters( filterRequest.getDelimiters() );
+            }
+
+            filterRequest.setInjectProjectBuildFilters( configSource.isIncludeProjectBuildFilters() );
             configSource.getMavenFileFilter().copyFile( filterRequest );
 
             return target;
@@ -113,15 +136,15 @@
         }
     }
 
-    private File formatLineEndings( String lineEndingChars, File source, File tempRoot, String encoding )
+
+    private File formatLineEndings( LineEndings lineEnding, File source, File tempRoot, String encoding )
         throws AssemblyFormattingException
     {
-        Reader contentReader = null;
         try
         {
             File target = FileUtils.createTempFile( source.getName() + ".", ".formatted", tempRoot );
 
-            AssemblyFileUtils.convertLineEndings( source, target, lineEndingChars, null, encoding );
+            LineEndingsUtils.convertLineEndings( source, target, lineEnding, null, encoding );
 
             return target;
         }
@@ -131,12 +154,7 @@
         }
         catch ( IOException e )
         {
-            throw new AssemblyFormattingException( "Error line formatting file '" + source + "': " + e.getMessage(),
-                                                   e );
-        }
-        finally
-        {
-            IOUtil.close( contentReader );
+            throw new AssemblyFormattingException( "Error line formatting file '" + source + "': " + e.getMessage(), e );
         }
     }
 }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/format/FileSetFormatter.java b/src/main/java/org/apache/maven/plugin/assembly/format/FileSetFormatter.java
deleted file mode 100644
index e0ee022..0000000
--- a/src/main/java/org/apache/maven/plugin/assembly/format/FileSetFormatter.java
+++ /dev/null
@@ -1,132 +0,0 @@
-package org.apache.maven.plugin.assembly.format;
-
-/*
- * 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.
- */
-
-import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.utils.AssemblyFileUtils;
-import org.apache.maven.shared.model.fileset.FileSet;
-import org.apache.maven.shared.model.fileset.util.FileSetManager;
-import org.codehaus.plexus.logging.Logger;
-import org.codehaus.plexus.util.FileUtils;
-
-import javax.annotation.Nonnull;
-import java.io.File;
-import java.io.IOException;
-
-/**
- * @version $Id$
- */
-public class FileSetFormatter
-{
-
-    private final AssemblerConfigurationSource configSource;
-
-    private final Logger logger;
-
-    public FileSetFormatter( AssemblerConfigurationSource configSource, Logger logger )
-    {
-        this.configSource = configSource;
-        this.logger = logger;
-    }
-
-    public File formatFileSetForAssembly( @Nonnull File fileSetDir, @Nonnull org.apache.maven.plugin.assembly.model.FileSet set )
-        throws AssemblyFormattingException, IOException
-    {
-        String lineEndingHint = set.getLineEnding();
-
-        String lineEnding = AssemblyFileUtils.getLineEndingCharacters( lineEndingHint );
-
-        if ( ( lineEnding != null ) || set.isFiltered() )
-        {
-
-            FileSet fileSet = new FileSet();
-            fileSet.setLineEnding( lineEnding );
-            
-            fileSet.setDirectory( fileSetDir.getAbsolutePath() );
-                        
-            fileSet.setIncludes( set.getIncludes() );
-
-            fileSet.setExcludes( set.getExcludes() );
-            fileSet.setUseDefaultExcludes( true );
-
-            FileSetManager fsm = new FileSetManager( logger );
-            String[] files = fsm.getIncludedFiles( fileSet );
-
-            // if we don't have anything to process, let's just skip all of this mess.
-            if ( ( files == null ) || ( files.length == 0 ) )
-            {
-                logger.info( "No files selected for line-ending conversion or filtering. Skipping: " + fileSet.getDirectory() );
-            }
-            else
-            {
-                File formattedDir =
-                    FileUtils.createTempFile( "fileSetFormatter.", ".tmp", configSource.getTemporaryRootDirectory() );
-                
-                logger.debug( "Filtering files from: " + fileSetDir + " into temp dir: " + formattedDir );
-
-                formattedDir.delete();
-                formattedDir.mkdirs();
-
-                FileFormatter fileFormatter = new FileFormatter( configSource, logger );
-                for (String file : files) {
-                    logger.debug("Filtering: " + file);
-
-                    File targetFile = new File(formattedDir, file);
-
-                    targetFile.getParentFile().mkdirs();
-
-                    File sourceFile = new File(fileSetDir, file);
-                    try {
-                        sourceFile =
-                                fileFormatter.format(sourceFile, set.isFiltered(), lineEndingHint, formattedDir,
-                                        configSource.getEncoding());
-                        AssemblyFileUtils.copyFile(sourceFile, targetFile);
-                    } catch (AssemblyFormattingException e) {
-                        deleteDirectory(formattedDir);
-                        throw e;
-                    } catch (IOException e) {
-                        deleteDirectory(formattedDir);
-                        throw e;
-                    }
-                }
-                return formattedDir;
-            }
-        }
-        else
-        {
-            logger.debug( "NOT reformatting any files in " + fileSetDir );
-        }
-
-        return fileSetDir;
-    }
-
-    private static void deleteDirectory( File formattedDir )
-    {
-        try
-        {
-            FileUtils.deleteDirectory( formattedDir );
-        }
-        catch ( IOException e1 )
-        {
-            // ignore
-        }
-    }
-
-}
diff --git a/src/main/java/org/apache/maven/plugin/assembly/format/ReaderFormatter.java b/src/main/java/org/apache/maven/plugin/assembly/format/ReaderFormatter.java
new file mode 100644
index 0000000..aef5f0e
--- /dev/null
+++ b/src/main/java/org/apache/maven/plugin/assembly/format/ReaderFormatter.java
@@ -0,0 +1,144 @@
+package org.apache.maven.plugin.assembly.format;
+
+/*
+ * 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.
+ */
+
+import org.apache.commons.io.input.ReaderInputStream;
+import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
+import org.apache.maven.plugin.assembly.utils.AssemblyFileUtils;
+import org.apache.maven.plugin.assembly.utils.LineEndings;
+import org.apache.maven.plugin.assembly.utils.LineEndingsUtils;
+import org.apache.maven.shared.filtering.MavenFilteringException;
+import org.apache.maven.shared.filtering.MavenReaderFilterRequest;
+import org.codehaus.plexus.components.io.functions.InputStreamTransformer;
+import org.codehaus.plexus.components.io.resources.PlexusIoResource;
+
+import javax.annotation.Nonnull;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.util.LinkedHashSet;
+import java.util.List;
+
+public class ReaderFormatter
+{
+    private static Reader createReaderFilter( @Nonnull Reader source, String sourceName, String encoding,
+                                              String escapeString, List<String> delimiters,
+                                              AssemblerConfigurationSource configSource )
+        throws AssemblyFormattingException
+    {
+        try
+        {
+            // @todo this test can be improved
+            boolean isPropertiesFile = AssemblyFileUtils.isPropertyFile( sourceName );
+
+            MavenReaderFilterRequest filterRequest =
+                new MavenReaderFilterRequest( source, true, configSource.getProject(), configSource.getFilters(),
+                                            isPropertiesFile, encoding, configSource.getMavenSession(), null );
+            filterRequest.setEscapeString( escapeString );
+
+            // if these are NOT set, just use the defaults, which are '${*}' and '@'.
+            if ( delimiters != null && !delimiters.isEmpty() )
+            {
+                LinkedHashSet<String> delims = new LinkedHashSet<String>();
+                for ( String delim : delimiters )
+                {
+                    if ( delim == null )
+                    {
+                        // FIXME: ${filter:*} could also trigger this condition. Need a better long-term solution.
+                        delims.add( "${*}" );
+                    }
+                    else
+                    {
+                        delims.add( delim );
+                    }
+                }
+
+                filterRequest.setDelimiters( delims );
+            }
+            else
+            {
+                filterRequest.setDelimiters( filterRequest.getDelimiters() );
+            }
+
+            filterRequest.setInjectProjectBuildFilters( configSource.isIncludeProjectBuildFilters() );
+            return configSource.getMavenReaderFilter().filter( filterRequest );
+        }
+        catch ( MavenFilteringException e )
+        {
+            throw new AssemblyFormattingException( "Error filtering file '" + source + "': " + e.getMessage(), e );
+        }
+    }
+
+    public static InputStreamTransformer getFileSetTransformers( final AssemblerConfigurationSource configSource, final boolean isFiltered, String fileSetLineEnding )
+        throws AssemblyFormattingException
+    {
+        final String lineEndingHint = fileSetLineEnding;
+
+        String lineEnding = LineEndingsUtils.getLineEndingCharacters( lineEndingHint );
+
+        if ( ( lineEnding != null ) || isFiltered )
+        {
+            return new InputStreamTransformer()
+            {
+                public InputStream transform( PlexusIoResource plexusIoResource, InputStream inputStream )
+                    throws IOException
+                {
+                    if ( isFiltered )
+                    {
+                        final String encoding = configSource.getEncoding();
+
+                        Reader source = encoding != null ? new InputStreamReader( inputStream, encoding )
+                            : new InputStreamReader( inputStream ); // wtf platform encoding ?
+                        try
+                        {
+                            Reader filtered = createReaderFilter( source, plexusIoResource.getName(),
+                                                                                  configSource.getEncoding(),
+                                                                                  configSource.getEscapeString(),
+                                                                                  configSource.getDelimiters(),
+                                                                                  configSource );
+                            final ReaderInputStream readerInputStream = encoding != null ? new ReaderInputStream( filtered, encoding)
+                                : new ReaderInputStream( filtered );
+
+                            LineEndings lineEnding = LineEndingsUtils.getLineEnding( lineEndingHint );
+                            if ( !LineEndings.keep.equals( lineEnding ) )
+                            {
+                                return LineEndingsUtils.lineEndingConverter( readerInputStream, lineEnding );
+
+                            }
+                            return readerInputStream;
+
+                        }
+                        catch ( AssemblyFormattingException e )
+                        {
+                            throw new IOException( e.getMessage());
+                        }
+
+                    }
+                    else
+                    {
+                        return inputStream;
+                    }
+                }
+            };
+        }
+        return null;
+    }
+}
diff --git a/src/main/java/org/apache/maven/plugin/assembly/format/ReflectionProperties.java b/src/main/java/org/apache/maven/plugin/assembly/format/ReflectionProperties.java
index 0b3e247..f519fab 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/format/ReflectionProperties.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/format/ReflectionProperties.java
@@ -29,7 +29,7 @@
  * @author Andreas Hoheneder (ahoh_at_inode.at)
  * @version $Id$
  * 
- * @depcrecated
+ * @deprecated
  */
 @Deprecated
 public class ReflectionProperties
@@ -40,7 +40,7 @@
 
     private final MavenProject project;
 
-    boolean escapedBackslashesInFilePath;
+    final boolean escapedBackslashesInFilePath;
 
     public ReflectionProperties( final MavenProject aProject, final boolean escapedBackslashesInFilePath )
     {
diff --git a/src/main/java/org/apache/maven/plugin/assembly/interpolation/AssemblyExpressionEvaluator.java b/src/main/java/org/apache/maven/plugin/assembly/interpolation/AssemblyExpressionEvaluator.java
index d4d4296..274de52 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/interpolation/AssemblyExpressionEvaluator.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/interpolation/AssemblyExpressionEvaluator.java
@@ -34,8 +34,8 @@
 {
     
     private final AssemblerConfigurationSource configSource;
-    private Interpolator interpolator;
-    private PrefixAwareRecursionInterceptor interceptor;
+    private final Interpolator interpolator;
+    private final PrefixAwareRecursionInterceptor interceptor;
 
     public AssemblyExpressionEvaluator( AssemblerConfigurationSource configSource )
     {
diff --git a/src/main/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolationException.java b/src/main/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolationException.java
index 217061e..90e5cfe 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolationException.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolationException.java
@@ -27,43 +27,9 @@
 {
     private static final long serialVersionUID = 1L;
 
-    private String expression;
-
-    private String originalMessage;
-
-    public AssemblyInterpolationException( final String message )
-    {
-        super( message );
-    }
-
     public AssemblyInterpolationException( final String message, final Throwable cause )
     {
         super( message, cause );
     }
 
-    public AssemblyInterpolationException( final String expression, final String message, final Throwable cause )
-    {
-        super( "The Assembly expression: " + expression + " could not be evaluated. Reason: " + message, cause );
-
-        this.expression = expression;
-        originalMessage = message;
-    }
-
-    public AssemblyInterpolationException( final String expression, final String message )
-    {
-        super( "The Assembly expression: " + expression + " could not be evaluated. Reason: " + message );
-
-        this.expression = expression;
-        originalMessage = message;
-    }
-
-    public String getExpression()
-    {
-        return expression;
-    }
-
-    public String getOriginalMessage()
-    {
-        return originalMessage;
-    }
 }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolator.java b/src/main/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolator.java
index bb9a279..7ec4235 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolator.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolator.java
@@ -29,6 +29,7 @@
 
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
+import org.apache.maven.plugin.assembly.io.DefaultAssemblyReader;
 import org.apache.maven.plugin.assembly.model.Assembly;
 import org.apache.maven.plugin.assembly.utils.AssemblyFileUtils;
 import org.apache.maven.plugin.assembly.utils.InterpolationConstants;
@@ -115,7 +116,7 @@
         catch ( final InterpolationException e )
         {
             throw new AssemblyInterpolationException( "Failed to interpolate assembly with ID: " + assembly.getId()
-                            + ". Reason: " + e.getMessage(), e );
+                + ". Reason: " + e.getMessage(), e );
         }
         finally
         {
@@ -126,12 +127,13 @@
         {
             final StringBuilder sb = new StringBuilder();
 
-            sb.append("One or more minor errors occurred while interpolating the assembly with ID: ").append(assembly.getId()).append(":\n");
+            sb.append( "One or more minor errors occurred while interpolating the assembly with ID: " ).append( assembly.getId() ).append( ":\n" );
 
             @SuppressWarnings( "unchecked" )
             final List<ObjectInterpolationWarning> warnings = objectInterpolator.getWarnings();
-            for (final ObjectInterpolationWarning warning : warnings) {
-                sb.append('\n').append(warning);
+            for ( final ObjectInterpolationWarning warning : warnings )
+            {
+                sb.append( '\n' ).append( warning );
             }
 
             sb.append( "\n\nThese values were SKIPPED, but the assembly process will continue.\n" );
@@ -189,20 +191,7 @@
 
         interpolator.addValueSource( new PropertiesBasedValueSource( settingsProperties ) );
 
-        Properties commandLineProperties = System.getProperties();
-        if ( session != null )
-        {
-            commandLineProperties = new Properties();
-            if ( session.getExecutionProperties() != null )
-            {
-                commandLineProperties.putAll( session.getExecutionProperties() );
-            }
-            
-            if ( session.getUserProperties() != null )
-            {
-                commandLineProperties.putAll( session.getUserProperties() );
-            }
-        }
+        Properties commandLineProperties = DefaultAssemblyReader.mergeExecutionPropertiesWithSystemPropertiew( session );
 
         // 7
         interpolator.addValueSource( new PropertiesBasedValueSource( commandLineProperties ) );
diff --git a/src/main/java/org/apache/maven/plugin/assembly/io/DefaultAssemblyReader.java b/src/main/java/org/apache/maven/plugin/assembly/io/DefaultAssemblyReader.java
index 57e409b..3667fd7 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/io/DefaultAssemblyReader.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/io/DefaultAssemblyReader.java
@@ -111,17 +111,19 @@
         if ( ( descriptors != null ) && ( descriptors.length > 0 ) )
         {
             locator.setStrategies( strategies );
-            for (String descriptor1 : descriptors) {
-                getLogger().info("Reading assembly descriptor: " + descriptor1);
-                addAssemblyFromDescriptor(descriptor1, locator, configSource, assemblies);
+            for ( String descriptor1 : descriptors )
+            {
+                getLogger().info( "Reading assembly descriptor: " + descriptor1 );
+                addAssemblyFromDescriptor( descriptor1, locator, configSource, assemblies );
             }
         }
 
         if ( ( descriptorRefs != null ) && ( descriptorRefs.length > 0 ) )
         {
             locator.setStrategies( refStrategies );
-            for (String descriptorRef : descriptorRefs) {
-                addAssemblyForDescriptorReference(descriptorRef, configSource, assemblies);
+            for ( String descriptorRef : descriptorRefs )
+            {
+                addAssemblyForDescriptorReference( descriptorRef, configSource, assemblies );
             }
         }
 
@@ -163,8 +165,9 @@
 
             if ( paths != null )
             {
-                for (String path : paths) {
-                    addAssemblyFromDescriptor(path, locator, configSource, assemblies);
+                for ( String path : paths )
+                {
+                    addAssemblyFromDescriptor( path, locator, configSource, assemblies );
                 }
             }
         }
@@ -183,9 +186,11 @@
 
         // check unique IDs
         final Set<String> ids = new HashSet<String>();
-        for (final Assembly assembly : assemblies) {
-            if (!ids.add(assembly.getId())) {
-                getLogger().warn("The assembly id " + assembly.getId() + " is used more than once.");
+        for ( final Assembly assembly : assemblies )
+        {
+            if ( !ids.add( assembly.getId() ) )
+            {
+                getLogger().warn( "The assembly id " + assembly.getId() + " is used more than once." );
             }
 
         }
@@ -347,20 +352,7 @@
             final Map<String, String> context = new HashMap<String, String>();
             final MavenSession session = configSource.getMavenSession();
 
-            Properties commandLineProperties = System.getProperties();
-            if ( session != null )
-            {
-                commandLineProperties = new Properties();
-                if ( session.getExecutionProperties() != null )
-                {
-                    commandLineProperties.putAll( session.getExecutionProperties() );
-                }
-
-                if ( session.getUserProperties() != null )
-                {
-                    commandLineProperties.putAll( session.getUserProperties() );
-                }
-            }
+            Properties commandLineProperties = mergeExecutionPropertiesWithSystemPropertiew( session );
 
             for ( final Enumeration<Object> e = commandLineProperties.keys(); e.hasMoreElements(); )
             {
@@ -417,6 +409,25 @@
         return assembly;
     }
 
+    public static Properties mergeExecutionPropertiesWithSystemPropertiew( MavenSession session )
+    {
+        Properties commandLineProperties = System.getProperties();
+        if ( session != null )
+        {
+            commandLineProperties = new Properties();
+            if ( session.getExecutionProperties() != null )
+            {
+                commandLineProperties.putAll( session.getExecutionProperties() );
+            }
+
+            if ( session.getUserProperties() != null )
+            {
+                commandLineProperties.putAll( session.getUserProperties() );
+            }
+        }
+        return commandLineProperties;
+    }
+
     private void debugPrintAssembly( final String message, final Assembly assembly )
     {
         final StringWriter sWriter = new StringWriter();
@@ -460,36 +471,48 @@
 
         final List<String> componentLocations = assembly.getComponentDescriptors();
 
-        for (String location : componentLocations) {
+        for ( String location : componentLocations )
+        {
             // allow expressions in path to component descriptor... MASSEMBLY-486
-            try {
-                location = aee.evaluate(location).toString();
-            } catch (final Exception eee) {
-                getLogger().error("Error interpolating componentDescriptor: " + location, eee);
+            try
+            {
+                location = aee.evaluate( location ).toString();
+            }
+            catch ( final Exception eee )
+            {
+                getLogger().error( "Error interpolating componentDescriptor: " + location, eee );
             }
 
-            final Location resolvedLocation = locator.resolve(location);
+            final Location resolvedLocation = locator.resolve( location );
 
-            if (resolvedLocation == null) {
-                throw new AssemblyReadException("Failed to locate component descriptor: " + location);
+            if ( resolvedLocation == null )
+            {
+                throw new AssemblyReadException( "Failed to locate component descriptor: " + location );
             }
 
             Component component = null;
             Reader reader = null;
-            try {
-                reader = new InputStreamReader(resolvedLocation.getInputStream());
-                component = new ComponentXpp3Reader().read(reader);
-            } catch (final IOException e) {
-                throw new AssemblyReadException("Error reading component descriptor: " + location + " (resolved to: "
-                        + resolvedLocation.getSpecification() + ")", e);
-            } catch (final XmlPullParserException e) {
-                throw new AssemblyReadException("Error reading component descriptor: " + location + " (resolved to: "
-                        + resolvedLocation.getSpecification() + ")", e);
-            } finally {
-                IOUtil.close(reader);
+            try
+            {
+                reader = new InputStreamReader( resolvedLocation.getInputStream() );
+                component = new ComponentXpp3Reader().read( reader );
+            }
+            catch ( final IOException e )
+            {
+                throw new AssemblyReadException( "Error reading component descriptor: " + location + " (resolved to: "
+                    + resolvedLocation.getSpecification() + ")", e );
+            }
+            catch ( final XmlPullParserException e )
+            {
+                throw new AssemblyReadException( "Error reading component descriptor: " + location + " (resolved to: "
+                    + resolvedLocation.getSpecification() + ")", e );
+            }
+            finally
+            {
+                IOUtil.close( reader );
             }
 
-            mergeComponentWithAssembly(component, assembly);
+            mergeComponentWithAssembly( component, assembly );
         }
     }
 
@@ -504,32 +527,37 @@
         final List<ContainerDescriptorHandlerConfig> containerHandlerDescriptors =
             component.getContainerDescriptorHandlers();
 
-        for (final ContainerDescriptorHandlerConfig cfg : containerHandlerDescriptors) {
-            assembly.addContainerDescriptorHandler(cfg);
+        for ( final ContainerDescriptorHandlerConfig cfg : containerHandlerDescriptors )
+        {
+            assembly.addContainerDescriptorHandler( cfg );
         }
 
         final List<DependencySet> dependencySetList = component.getDependencySets();
 
-        for (final DependencySet dependencySet : dependencySetList) {
-            assembly.addDependencySet(dependencySet);
+        for ( final DependencySet dependencySet : dependencySetList )
+        {
+            assembly.addDependencySet( dependencySet );
         }
 
         final List<FileSet> fileSetList = component.getFileSets();
 
-        for (final FileSet fileSet : fileSetList) {
-            assembly.addFileSet(fileSet);
+        for ( final FileSet fileSet : fileSetList )
+        {
+            assembly.addFileSet( fileSet );
         }
 
         final List<FileItem> fileList = component.getFiles();
 
-        for (final FileItem fileItem : fileList) {
-            assembly.addFile(fileItem);
+        for ( final FileItem fileItem : fileList )
+        {
+            assembly.addFile( fileItem );
         }
 
         final List<Repository> repositoriesList = component.getRepositories();
 
-        for (final Repository repository : repositoriesList) {
-            assembly.addRepository(repository);
+        for ( final Repository repository : repositoriesList )
+        {
+            assembly.addRepository( repository );
         }
 
         final List<ModuleSet> moduleSets = component.getModuleSets();
diff --git a/src/main/java/org/apache/maven/plugin/assembly/io/PrefixedClasspathLocatorStrategy.java b/src/main/java/org/apache/maven/plugin/assembly/io/PrefixedClasspathLocatorStrategy.java
index 2c9ad38..4870170 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/io/PrefixedClasspathLocatorStrategy.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/io/PrefixedClasspathLocatorStrategy.java
@@ -26,7 +26,7 @@
 /**
  * @version $Id$
  */
-public class PrefixedClasspathLocatorStrategy
+class PrefixedClasspathLocatorStrategy
     extends ClasspathResourceLocatorStrategy
 {
 
diff --git a/src/main/java/org/apache/maven/plugin/assembly/io/RelativeFileLocatorStrategy.java b/src/main/java/org/apache/maven/plugin/assembly/io/RelativeFileLocatorStrategy.java
index e8141d9..5930d4d 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/io/RelativeFileLocatorStrategy.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/io/RelativeFileLocatorStrategy.java
@@ -29,11 +29,11 @@
 /**
  * @version $Id$
  */
-public class RelativeFileLocatorStrategy
+class RelativeFileLocatorStrategy
     implements LocatorStrategy
 {
 
-    private File basedir;
+    private final File basedir;
 
     public RelativeFileLocatorStrategy( File basedir )
     {
diff --git a/src/main/java/org/apache/maven/plugin/assembly/mojos/AbstractAssemblyMojo.java b/src/main/java/org/apache/maven/plugin/assembly/mojos/AbstractAssemblyMojo.java
index c4df415..0fb998e 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/mojos/AbstractAssemblyMojo.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/mojos/AbstractAssemblyMojo.java
@@ -44,6 +44,7 @@
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.project.MavenProjectHelper;
 import org.apache.maven.shared.filtering.MavenFileFilter;
+import org.apache.maven.shared.filtering.MavenReaderFilter;
 import org.codehaus.plexus.configuration.PlexusConfiguration;
 
 /**
@@ -60,7 +61,7 @@
      * The character encoding scheme to be applied when filtering resources.
      */
     @Parameter( property = "encoding", defaultValue = "${project.build.sourceEncoding}" )
-    protected String encoding;
+    private String encoding;
 
     /**
      * Expressions preceded with this String won't be interpolated.
@@ -69,7 +70,7 @@
      * @since 2.4
      */
     @Parameter( property = "assembly.escapeString" )
-    protected String escapeString;
+    private String escapeString;
 
     /**
      * Flag allowing one or more executions of the assembly plugin to be configured as skipped for a particular build.
@@ -130,14 +131,15 @@
     /**
      * Specifies the formats of the assembly.
      * Multiple formats can be supplied and the Assembly Plugin will generate an archive for each desired formats.
-     * When deploying your project, all file formats specified will also be deployed. A format is specified by supplying one of the following
+     * When deploying your project, all file formats specified will also be deployed. A format is specified by supplying
+     * one of the following
      * values in a &lt;format&gt; subelement:
      * <ul>
      * <li><em>dir</em> - Creates a directory</li>
      * <li><em>zip</em> - Creates a ZIP file format</li>
      * <li><em>tar</em> - Creates a TAR format</li>
-     * <li><em>tar.gz</em> - Creates a gzip'd TAR format</li>
-     * <li><em>tar.bz2</em> - Creates a bzip'd TAR format</li>
+     * <li><em>tar.gz</em> or <em>tgz</em> - Creates a gzip'd TAR format</li>
+     * <li><em>tar.bz2</em> or <em>tbz2</em> - Creates a bzip'd TAR format</li>
      * </ul>
      */
     @Parameter
@@ -161,8 +163,7 @@
 
     /**
      * A list of references to assembly descriptors available on the plugin's classpath. The default classpath
-     * includes these built-in descriptors: <code>bin</code>,
-     * <code>jar-with-dependencies</code>, <code>src</code>, and
+     * includes these built-in descriptors: <code>bin</code>, <code>jar-with-dependencies</code>, <code>src</code>, and
      * <code>project</code>. You can add others by adding dependencies
      * to the plugin.
      */
@@ -189,7 +190,7 @@
      */
     @Deprecated
     @Parameter( property = "descriptorId" )
-    protected String descriptorId;
+    private String descriptorId;
 
     /**
      * Assembly XML Descriptor file. This must be the path to your customized descriptor file.
@@ -198,11 +199,11 @@
      */
     @Deprecated
     @Parameter( property = "descriptor" )
-    protected String descriptor;
+    private String descriptor;
 
     /**
      * Sets the TarArchiver behavior on file paths with more than 100 characters length. Valid values are: "warn"
-     * (default), "fail", "truncate", "gnu", or "omit".
+     * (default), "fail", "truncate", "gnu", "posix", "posix_warn" or "omit".
      */
     @Parameter( property = "assembly.tarLongFileMode", defaultValue = "warn" )
     private String tarLongFileMode;
@@ -226,6 +227,12 @@
     private MavenFileFilter mavenFileFilter;
 
     /**
+     * Maven shared filtering utility.
+     */
+    @Component
+    private MavenReaderFilter mavenReaderFilter;
+
+    /**
      * The Maven Session Object
      */
     @Parameter( defaultValue = "${session}", readonly = true, required = true )
@@ -256,13 +263,13 @@
      * Set to false to exclude the assembly id from the assembly final name.
      */
     @Parameter( property = "assembly.appendAssemblyId", defaultValue = "true" )
-    protected boolean appendAssemblyId;
+    boolean appendAssemblyId;
 
     /**
      * Set to true in order to not fail when a descriptor is missing.
      */
     @Parameter( property = "assembly.ignoreMissingDescriptor", defaultValue = "false" )
-    protected boolean ignoreMissingDescriptor;
+    private boolean ignoreMissingDescriptor;
 
     /**
      * This is a set of instructions to the archive builder, especially for building .jar files. It enables you to
@@ -275,13 +282,21 @@
     /**
      * The list of extra filter properties files to be used along with System properties, project
      * properties, and filter properties files specified in the POM build/filters section, which
-     * should be used for the filtering during the current mojo execution.
-     * <br/>
+     * should be used for the filtering during the current mojo execution. <br/>
      * Normally, these will be configured from a plugin's execution section, to provide a different
      * set of filters for a particular execution.
      */
     @Parameter
-    protected List<String> filters;
+    private List<String> filters;
+
+    /**
+     * If True (default) then the ${project.build.filters} are also used in addition to any
+     * further filters defined for the Assembly.
+     * 
+     * @since 2.4.2
+     */
+    @Parameter( property = "assembly.includeProjectBuildFilters", defaultValue = "true" )
+    private boolean includeProjectBuildFilters;
 
     /**
      * Controls whether the assembly plugin tries to attach the resulting assembly to the project.
@@ -317,6 +332,7 @@
      * For instance, to direct an assembly with the "ear" format to use a particular deployment descriptor, you should
      * specify the following for the archiverConfig value in your plugin configuration: <br/>
      * <p/>
+     * 
      * <pre>
      * &lt;appxml&gt;${project.basedir}/somepath/app.xml&lt;/appxml&gt;
      * </pre>
@@ -338,8 +354,8 @@
     /**
      * This will cause the assembly to only update an existing archive, if it exists.
      * <p>
-     * <strong>Note:</strong> The property that can be used on the command line
-     * was misspelled as "assembly.updatOnly" in versions prior to version 2.4.
+     * <strong>Note:</strong> The property that can be used on the command line was misspelled as "assembly.updatOnly"
+     * in versions prior to version 2.4.
      * </p>
      *
      * @since 2.2
@@ -349,7 +365,8 @@
 
     /**
      * <p>
-     * will use the jvm chmod, this is available for user and all level group level will be ignored
+     * will use the jvm chmod, this is available for user and all level group level will be ignored As of
+     * assembly-plugin 2.5, this flag is ignored for users of java7+
      * </p>
      *
      * @since 2.2
@@ -373,10 +390,33 @@
     private boolean ignorePermissions;
 
     /**
+     * <p>
+     * Set of delimiters for expressions to filter within the resources. These delimiters are specified in the form
+     * 'beginToken*endToken'. If no '*' is given, the delimiter is assumed to be the same for start and end.
+     * </p>
+     * <p>
+     * So, the default filtering delimiters might be specified as:
+     * </p>
+     * 
+     * <pre>
+     * &lt;delimiters&gt;
+     *   &lt;delimiter&gt;${*}&lt;/delimiter&gt;
+     *   &lt;delimiter&gt;@&lt;/delimiter&gt;
+     * &lt;/delimiters&gt;
+     * </pre>
+     * <p>
+     * Since the '@' delimiter is the same on both ends, we don't need to specify '@*@' (though we can).
+     * </p>
+     *
+     * @since 2.4
+     */
+    @Parameter
+    private List<String> delimiters;
+
+    /**
      * Create the binary distribution.
      * 
      * @throws org.apache.maven.plugin.MojoExecutionException
-     * 
      */
     public void execute()
         throws MojoExecutionException, MojoFailureException
@@ -406,79 +446,98 @@
         catch ( final InvalidAssemblerConfigurationException e )
         {
             throw new MojoFailureException( assemblyReader, e.getMessage(), "Mojo configuration is invalid: "
-                            + e.getMessage() );
+                + e.getMessage() );
         }
 
         // TODO: include dependencies marked for distribution under certain formats
         // TODO: how, might we plug this into an installer, such as NSIS?
 
         boolean warnedAboutMainProjectArtifact = false;
-        for (final Assembly assembly : assemblies) {
-            try {
-                final String fullName = AssemblyFormatUtils.getDistributionName(assembly, this);
+        for ( final Assembly assembly : assemblies )
+        {
+            try
+            {
+                final String fullName = AssemblyFormatUtils.getDistributionName( assembly, this );
 
                 List<String> effectiveFormats = formats;
-                if (effectiveFormats == null || effectiveFormats.size() == 0) {
+                if ( effectiveFormats == null || effectiveFormats.size() == 0 )
+                {
                     effectiveFormats = assembly.getFormats();
                 }
-                if (effectiveFormats == null || effectiveFormats.size() == 0) {
-                    throw new MojoFailureException("No formats specified in the execution parameters or the assembly descriptor.");
+                if ( effectiveFormats == null || effectiveFormats.size() == 0 )
+                {
+                    throw new MojoFailureException(
+                                                    "No formats specified in the execution parameters or the assembly descriptor." );
                 }
 
-                for (final String format : effectiveFormats) {
+                for ( final String format : effectiveFormats )
+                {
                     final File destFile =
-                            assemblyArchiver.createArchive(assembly, fullName, format, this, isRecompressZippedFiles());
+                        assemblyArchiver.createArchive( assembly, fullName, format, this, isRecompressZippedFiles() );
 
                     final MavenProject project = getProject();
                     final String classifier = getClassifier();
-                    final String type = project.getArtifact()
-                            .getType();
+                    final String type = project.getArtifact().getType();
 
-                    if (attach && destFile.isFile()) {
-                        if (isAssemblyIdAppended()) {
-                            projectHelper.attachArtifact(project, format, assembly.getId(), destFile);
-                        } else if (classifier != null) {
-                            projectHelper.attachArtifact(project, format, classifier, destFile);
-                        } else if (!"pom".equals(type) && format.equals(type)) {
-                            if (!warnedAboutMainProjectArtifact) {
+                    if ( attach && destFile.isFile() )
+                    {
+                        if ( isAssemblyIdAppended() )
+                        {
+                            projectHelper.attachArtifact( project, format, assembly.getId(), destFile );
+                        }
+                        else if ( classifier != null )
+                        {
+                            projectHelper.attachArtifact( project, format, classifier, destFile );
+                        }
+                        else if ( !"pom".equals( type ) && format.equals( type ) )
+                        {
+                            if ( !warnedAboutMainProjectArtifact )
+                            {
                                 final StringBuilder message = new StringBuilder();
 
-                                message.append("Configuration options: 'appendAssemblyId' is set to false, and 'classifier' is missing.");
-                                message.append("\nInstead of attaching the assembly file: ")
-                                        .append(destFile)
-                                        .append(", it will become the file for main project artifact.");
-                                message.append("\nNOTE: If multiple descriptors or descriptor-formats are provided for this project, the value of this file will be non-deterministic!");
+                                message.append( "Configuration options: 'appendAssemblyId' is set to false, and 'classifier' is missing." );
+                                message.append( "\nInstead of attaching the assembly file: " ).append( destFile ).append( ", it will become the file for main project artifact." );
+                                message.append( "\nNOTE: If multiple descriptors or descriptor-formats are provided for this project, the value of this file will be non-deterministic!" );
 
-                                getLog().warn(message);
+                                getLog().warn( message );
                                 warnedAboutMainProjectArtifact = true;
                             }
 
-                            final File existingFile = project.getArtifact()
-                                    .getFile();
-                            if ((existingFile != null) && existingFile.exists()) {
-                                getLog().warn("Replacing pre-existing project main-artifact file: " + existingFile
-                                        + "\nwith assembly file: " + destFile);
+                            final File existingFile = project.getArtifact().getFile();
+                            if ( ( existingFile != null ) && existingFile.exists() )
+                            {
+                                getLog().warn( "Replacing pre-existing project main-artifact file: " + existingFile
+                                                   + "\nwith assembly file: " + destFile );
                             }
 
-                            project.getArtifact()
-                                    .setFile(destFile);
-                        } else {
-                            projectHelper.attachArtifact(project, format, null, destFile);
+                            project.getArtifact().setFile( destFile );
                         }
-                    } else if (attach) {
-                        getLog().warn("Assembly file: "
-                                + destFile
-                                + " is not a regular file (it may be a directory). It cannot be attached to the project build for installation or deployment.");
+                        else
+                        {
+                            projectHelper.attachArtifact( project, format, null, destFile );
+                        }
+                    }
+                    else if ( attach )
+                    {
+                        getLog().warn( "Assembly file: "
+                                           + destFile
+                                           + " is not a regular file (it may be a directory). It cannot be attached to the project build for installation or deployment." );
                     }
                 }
-            } catch (final ArchiveCreationException e) {
-                throw new MojoExecutionException("Failed to create assembly: " + e.getMessage(), e);
-            } catch (final AssemblyFormattingException e) {
-                throw new MojoExecutionException("Failed to create assembly: " + e.getMessage(), e);
-            } catch (final InvalidAssemblerConfigurationException e) {
-                throw new MojoFailureException(assembly, "Assembly is incorrectly configured: " + assembly.getId(),
-                        "Assembly: " + assembly.getId() + " is not configured correctly: "
-                                + e.getMessage());
+            }
+            catch ( final ArchiveCreationException e )
+            {
+                throw new MojoExecutionException( "Failed to create assembly: " + e.getMessage(), e );
+            }
+            catch ( final AssemblyFormattingException e )
+            {
+                throw new MojoExecutionException( "Failed to create assembly: " + e.getMessage(), e );
+            }
+            catch ( final InvalidAssemblerConfigurationException e )
+            {
+                throw new MojoFailureException( assembly, "Assembly is incorrectly configured: " + assembly.getId(),
+                                                "Assembly: " + assembly.getId() + " is not configured correctly: "
+                                                    + e.getMessage() );
             }
         }
     }
@@ -486,15 +545,14 @@
     /**
      * Returns true if the current project is located at the Execution Root Directory (where mvn was launched)
      * 
-     * @return
+     * @return if this is the execution root
      */
-    protected boolean isThisTheExecutionRoot()
+    boolean isThisTheExecutionRoot()
     {
         final Log log = getLog();
         log.debug( "Root Folder:" + mavenSession.getExecutionRootDirectory() );
         log.debug( "Current Folder:" + basedir );
-        final boolean result = mavenSession.getExecutionRootDirectory()
-                                           .equalsIgnoreCase( basedir.toString() );
+        final boolean result = mavenSession.getExecutionRootDirectory().equalsIgnoreCase( basedir.toString() );
         if ( result )
         {
             log.debug( "This is the execution root." );
@@ -507,12 +565,12 @@
         return result;
     }
 
-    protected AssemblyArchiver getAssemblyArchiver()
+    AssemblyArchiver getAssemblyArchiver()
     {
         return assemblyArchiver;
     }
 
-    protected AssemblyReader getAssemblyReader()
+    AssemblyReader getAssemblyReader()
     {
         return assemblyReader;
     }
@@ -620,8 +678,7 @@
     {
         if ( filters == null )
         {
-            filters = getProject().getBuild()
-                                  .getFilters();
+            filters = getProject().getBuild().getFilters();
             if ( filters == null )
             {
                 filters = Collections.emptyList();
@@ -630,6 +687,11 @@
         return filters;
     }
 
+    public boolean isIncludeProjectBuildFilters()
+    {
+        return includeProjectBuildFilters;
+    }
+
     public List<MavenProject> getReactorProjects()
     {
         return reactorProjects;
@@ -656,20 +718,6 @@
         this.archive = archive;
     }
 
-    public void setArchiveBaseDirectory( final File archiveBaseDirectory )
-    {
-        this.archiveBaseDirectory = archiveBaseDirectory;
-    }
-
-    public void setAssemblyArchiver( final AssemblyArchiver assemblyArchiver )
-    {
-        this.assemblyArchiver = assemblyArchiver;
-    }
-
-    public void setAssemblyReader( final AssemblyReader assemblyReader )
-    {
-        this.assemblyReader = assemblyReader;
-    }
 
     public void setBasedir( final File basedir )
     {
@@ -813,6 +861,11 @@
         return mavenFileFilter;
     }
 
+    public MavenReaderFilter getMavenReaderFilter()
+    {
+        return mavenReaderFilter;
+    }
+
     public boolean isUpdateOnly()
     {
         return updateOnly;
@@ -827,13 +880,13 @@
     {
         return ignorePermissions;
     }
-    
+
     public String getEncoding()
     {
         return encoding;
     }
 
-    protected boolean isRecompressZippedFiles()
+    boolean isRecompressZippedFiles()
     {
         return recompressZippedFiles;
     }
@@ -842,4 +895,15 @@
     {
         return escapeString;
     }
+
+    public List<String> getDelimiters()
+    {
+        return delimiters;
+    }
+
+    public void setDelimiters( List<String> delimiters )
+    {
+        this.delimiters = delimiters;
+    }
+
 }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/mojos/AttachedAssemblyMojo.java b/src/main/java/org/apache/maven/plugin/assembly/mojos/AttachedAssemblyMojo.java
index 8e8644f..9d40de6 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/mojos/AttachedAssemblyMojo.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/mojos/AttachedAssemblyMojo.java
@@ -19,7 +19,6 @@
  * under the License.
  */
 
-import org.apache.maven.plugins.annotations.Component;
 import org.apache.maven.plugins.annotations.Mojo;
 import org.apache.maven.plugins.annotations.Parameter;
 import org.apache.maven.project.MavenProject;
diff --git a/src/main/java/org/apache/maven/plugin/assembly/mojos/SingleAssemblyMojo.java b/src/main/java/org/apache/maven/plugin/assembly/mojos/SingleAssemblyMojo.java
index 298b7dd..8efbe51 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/mojos/SingleAssemblyMojo.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/mojos/SingleAssemblyMojo.java
@@ -21,6 +21,7 @@
 
 import org.apache.maven.plugins.annotations.Mojo;
 import org.apache.maven.plugins.annotations.Parameter;
+import org.apache.maven.plugins.annotations.ResolutionScope;
 import org.apache.maven.project.MavenProject;
 
 /**
@@ -32,7 +33,7 @@
  * @author <a href="mailto:brett@apache.org">Brett Porter</a>
  * @version $Id$
  */
-@Mojo( name = "single", inheritByDefault = false, threadSafe = true )
+@Mojo( name = "single", inheritByDefault = false, requiresDependencyResolution = ResolutionScope.COMPILE, threadSafe = true )
 public class SingleAssemblyMojo
     extends AbstractAssemblyMojo
 {
diff --git a/src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java b/src/main/java/org/apache/maven/plugin/assembly/resolved/AssemblyId.java
similarity index 60%
rename from src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java
rename to src/main/java/org/apache/maven/plugin/assembly/resolved/AssemblyId.java
index 14de16b..5c68603 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/AssemblyContext.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/resolved/AssemblyId.java
@@ -1,4 +1,4 @@
-package org.apache.maven.plugin.assembly;
+package org.apache.maven.plugin.assembly.resolved;
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
@@ -19,13 +19,30 @@
  * under the License.
  */
 
-import org.apache.maven.artifact.Artifact;
+import org.apache.maven.plugin.assembly.model.Assembly;
 
-import java.util.Set;
-
-public interface AssemblyContext
+public class AssemblyId
 {
-    void setResolvedArtifacts( Set<Artifact> artifacts );
+    private final String id;
 
-    Set<Artifact> getResolvedArtifacts();
+    private AssemblyId( String id )
+    {
+        this.id = id;
+    }
+
+    public static AssemblyId createAssemblyId( String id )
+    {
+        return new AssemblyId( id );
+    }
+
+    public static AssemblyId createAssemblyId( Assembly id )
+    {
+        return new AssemblyId( id.getId() );
+    }
+
+    @Override
+    public String toString()
+    {
+        return id;
+    }
 }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedAssembly.java b/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedAssembly.java
new file mode 100644
index 0000000..99c4be6
--- /dev/null
+++ b/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedAssembly.java
@@ -0,0 +1,109 @@
+package org.apache.maven.plugin.assembly.resolved;
+
+/*
+ * 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.
+ */
+
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
+import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
+import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
+import org.apache.maven.plugin.assembly.model.Assembly;
+import org.apache.maven.plugin.assembly.model.DependencySet;
+import org.apache.maven.plugin.assembly.model.FileItem;
+import org.apache.maven.plugin.assembly.model.FileSet;
+import org.apache.maven.plugin.assembly.model.Repository;
+import org.apache.maven.plugin.assembly.resolved.functions.ResolvedModuleSetConsumer;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+public class ResolvedAssembly
+{
+
+    private final Assembly assembly;
+
+    private final List<ResolvedModuleSet> resolvedModuleSets;
+
+    private final Set<Artifact> dependencySetArtifacts;
+
+    private ResolvedAssembly( Assembly assembly, List<ResolvedModuleSet> resolvedModuleSets,
+                              Set<Artifact> dependencySetArtifacts )
+    {
+        this.assembly = assembly;
+        this.resolvedModuleSets = resolvedModuleSets;
+        this.dependencySetArtifacts = dependencySetArtifacts;
+    }
+
+    public static ResolvedAssembly create( Assembly assembly )
+    {
+        return new ResolvedAssembly( assembly, null, null );
+    }
+
+    public ResolvedAssembly withResolvedModuleSets( Iterable<ResolvedModuleSet> resolvedModuleSets )
+    {
+        List<ResolvedModuleSet> resolvedModuleSets1 = new ArrayList<ResolvedModuleSet>();
+        for ( ResolvedModuleSet resolvedModuleSet : resolvedModuleSets )
+        {
+            resolvedModuleSets1.add( resolvedModuleSet );
+        }
+        return new ResolvedAssembly( assembly, resolvedModuleSets1, dependencySetArtifacts );
+    }
+
+    public void forEachResolvedModule( ResolvedModuleSetConsumer resolvedModuleSetConsumer )
+        throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
+    {
+        if ( resolvedModuleSets == null )
+            return;
+        for ( ResolvedModuleSet resolvedModuleSet : resolvedModuleSets )
+        {
+            resolvedModuleSetConsumer.accept( resolvedModuleSet );
+        }
+    }
+
+    public Set<Artifact> getResolvedDependencySetArtifacts()
+    {
+        return dependencySetArtifacts;
+    }
+
+    public List<DependencySet> getDependencySets()
+    {
+        return assembly.getDependencySets();
+    }
+
+    public List<FileItem> getFiles()
+    {
+        return assembly.getFiles();
+    }
+
+    public List<FileSet> getFileSets()
+    {
+        return assembly.getFileSets();
+    }
+
+    public List<Repository> getRepositories()
+    {
+        return assembly.getRepositories();
+    }
+
+    public ResolvedAssembly withDependencySetArtifacts( final Set<Artifact> dependencySetArtifacts )
+    {
+        return new ResolvedAssembly( assembly, resolvedModuleSets, dependencySetArtifacts );
+    }
+}
diff --git a/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedModuleSet.java b/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedModuleSet.java
new file mode 100644
index 0000000..9ad5f12
--- /dev/null
+++ b/src/main/java/org/apache/maven/plugin/assembly/resolved/ResolvedModuleSet.java
@@ -0,0 +1,63 @@
+package org.apache.maven.plugin.assembly.resolved;
+
+/*
+ * 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.
+ */
+
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.plugin.assembly.model.ModuleSet;
+
+import java.util.Set;
+
+public class ResolvedModuleSet
+{
+    private final ModuleSet moduleSet;
+
+    private final Set<Artifact> artifacts;
+
+    private ResolvedModuleSet( ModuleSet moduleSet, Set<Artifact> artifacts )
+    {
+        this.moduleSet = moduleSet;
+        this.artifacts = artifacts;
+    }
+
+    public static ResolvedModuleSet createResolvedModuleSet( ModuleSet moduleSet )
+    {
+        return new ResolvedModuleSet( moduleSet, null );
+    }
+
+    public static ResolvedModuleSet empty()
+    {
+        return new ResolvedModuleSet( null, null );
+    }
+
+    public ModuleSet getModuleSet()
+    {
+        return moduleSet;
+    }
+
+    public ResolvedModuleSet withArtifacts( Set<Artifact> artifacts )
+    {
+        return new ResolvedModuleSet( moduleSet, artifacts );
+    }
+
+    public Set<Artifact> getArtifacts()
+    {
+        return artifacts;
+    }
+}
diff --git a/src/main/java/org/apache/maven/plugin/assembly/resolved/functions/ResolvedModuleSetConsumer.java b/src/main/java/org/apache/maven/plugin/assembly/resolved/functions/ResolvedModuleSetConsumer.java
new file mode 100644
index 0000000..3c79f98
--- /dev/null
+++ b/src/main/java/org/apache/maven/plugin/assembly/resolved/functions/ResolvedModuleSetConsumer.java
@@ -0,0 +1,31 @@
+package org.apache.maven.plugin.assembly.resolved.functions;
+
+/*
+ * 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.
+ */
+
+import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
+import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
+import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
+import org.apache.maven.plugin.assembly.resolved.ResolvedModuleSet;
+
+public interface ResolvedModuleSetConsumer
+{
+    void accept( ResolvedModuleSet resolvedModule )
+        throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException;
+}
diff --git a/src/main/java/org/apache/maven/plugin/assembly/utils/AssemblyFileUtils.java b/src/main/java/org/apache/maven/plugin/assembly/utils/AssemblyFileUtils.java
index 542e26e..dec8bbb 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/utils/AssemblyFileUtils.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/utils/AssemblyFileUtils.java
@@ -19,27 +19,16 @@
  * under the License.
  */
 
-import java.io.BufferedReader;
-import java.io.BufferedWriter;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.OutputStreamWriter;
-import java.io.RandomAccessFile;
-import java.nio.channels.FileChannel;
-
 import org.apache.maven.plugin.assembly.archive.ArchiveExpansionException;
-import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
 import org.codehaus.plexus.archiver.ArchiverException;
 import org.codehaus.plexus.archiver.UnArchiver;
 import org.codehaus.plexus.archiver.manager.ArchiverManager;
 import org.codehaus.plexus.archiver.manager.NoSuchArchiverException;
-import org.codehaus.plexus.util.IOUtil;
+import org.codehaus.plexus.components.io.fileselectors.FileInfo;
 
 import javax.annotation.Nonnull;
-import javax.annotation.Nullable;
+import java.io.File;
+import java.util.Locale;
 
 /**
  * @version $Id$
@@ -47,18 +36,6 @@
 public final class AssemblyFileUtils
 {
 
-    public static final String LINE_ENDING_KEEP = "keep";
-
-    public static final String LINE_ENDING_DOS = "dos";
-
-    public static final String LINE_ENDING_WINDOWS = "windows";
-
-    public static final String LINE_ENDING_UNIX = "unix";
-
-    public static final String LINE_ENDING_CRLF = "crlf";
-
-    public static final String LINE_ENDING_LF = "lf";
-
     private AssemblyFileUtils()
     {
         // no op
@@ -104,11 +81,12 @@
         return path;
     }
 
-    public static void verifyTempDirectoryAvailability( @Nonnull final File tempDir )
+    @SuppressWarnings( "ResultOfMethodCallIgnored" )
+    public static void verifyTempDirectoryAvailability( @Nonnull
+    final File tempDir )
     {
         if ( !tempDir.exists() )
         {
-            //noinspection ResultOfMethodCallIgnored
             tempDir.mkdirs();
         }
     }
@@ -116,7 +94,7 @@
     /**
      * Unpacks the archive file.
      *
-     * @param source  File to be unpacked.
+     * @param source File to be unpacked.
      * @param destDir Location where to put the unpacked files.
      */
     public static void unpack( File source, File destDir, ArchiverManager archiverManager )
@@ -138,158 +116,27 @@
         }
     }
 
-    /**
-     * Converts the line endings of a file, writing a new file.
-     * The encoding of reading and writing can be specified.
-     *
-     * @param source      The source file, not null
-     * @param dest        The destination file, not null
-     * @param lineEndings This is the result of the getLineEndingChars(..) method in this utility class; the actual
-     *                    line-ending characters, not null.
-     * @param atEndOfFile The end-of-file line ending,
-     *                    if true then the resulting file will have a new line at the end even if the input didn't have one,
-     *                    if false then the resulting file will have no new line at the end even if the input did have one,
-     *                    null to determine whether to have a new line at the end of the file based on the input file
-     * @param encoding    The encoding to use, null for platform encoding
-     */
-    public static void convertLineEndings( @Nonnull File source, @Nonnull File dest, String lineEndings,
-                                           Boolean atEndOfFile, String encoding )
-        throws IOException
-    {
-        // MASSEMBLY-637, MASSEMBLY-96
-        // find characters at the end of the file
-        // needed to preserve the last line ending
-        // only check for LF (as CRLF also ends in LF)
-        String eofChars = "";
-        if ( atEndOfFile == null )
-        {
-            RandomAccessFile raf = null;
-            try
-            {
-                if ( source.length() >= 1 )
-                {
-                    raf = new RandomAccessFile( source, "r" );
-                    raf.seek( source.length() - 1 );
-                    byte last = raf.readByte();
-                    if ( last == '\n' )
-                    {
-                        eofChars = lineEndings;
-                    }
-                }
-            }
-            finally
-            {
-                if ( raf != null )
-                {
-                    try
-                    {
-                        raf.close();
-                    }
-                    catch ( IOException ex )
-                    {
-                        // ignore
-                    }
-                }
-            }
-        }
-        else if (atEndOfFile == true )
-        {
-            eofChars = lineEndings;
-        }
-
-        BufferedReader in = null;
-        BufferedWriter out = null;
-        try
-        {
-            if ( encoding == null )
-            {
-                // platform encoding
-                in = new BufferedReader( new InputStreamReader( new FileInputStream( source ) ) );
-                out = new BufferedWriter( new OutputStreamWriter( new FileOutputStream( dest ) ) );
-            }
-            else
-            {
-                // MASSEMBLY-371
-                in = new BufferedReader( new InputStreamReader( new FileInputStream( source ), encoding ) );
-                out = new BufferedWriter( new OutputStreamWriter( new FileOutputStream( dest ), encoding ) );
-            }
-
-            String line;
-
-            line = in.readLine();
-            while ( line != null )
-            {
-                out.write( line );
-                line = in.readLine();
-                if ( line != null )
-                {
-                    out.write( lineEndings );
-                }
-                else
-                {
-                    out.write( eofChars );
-                }
-            }
-
-            out.flush();
-        }
-        finally
-        {
-            IOUtil.close( in );
-            IOUtil.close( out );
-        }
-    }
-
-    @Nullable
-    public static String getLineEndingCharacters( @Nullable String lineEnding )
-        throws AssemblyFormattingException
-    {
-        String value = lineEnding;
-        if ( lineEnding != null )
-        {
-            if ( LINE_ENDING_KEEP.equals( lineEnding ) )
-            {
-                value = null;
-            }
-            else if ( LINE_ENDING_DOS.equals( lineEnding ) || LINE_ENDING_WINDOWS.equals( lineEnding )
-                || LINE_ENDING_CRLF.equals( lineEnding ) )
-            {
-                value = "\r\n";
-            }
-            else if ( LINE_ENDING_UNIX.equals( lineEnding ) || LINE_ENDING_LF.equals( lineEnding ) )
-            {
-                value = "\n";
-            }
-            else
-            {
-                throw new AssemblyFormattingException( "Illegal lineEnding specified: '" + lineEnding + "'" );
-            }
-        }
-
-        return value;
-    }
-
-    public static void copyFile( File src, File dst )
-        throws IOException
-    {
-        FileChannel c1 = new RandomAccessFile( src, "r" ).getChannel();
-        FileChannel c2 = new RandomAccessFile( dst, "rw" ).getChannel();
-
-        long tCount = 0, size = c1.size();
-        //noinspection StatementWithEmptyBody
-        while ( ( tCount += c2.transferFrom( c1, 0, size - tCount ) ) < size )
-        {
-        }
-
-        c1.close();
-        c2.force( true );
-        c2.close();
-    }
-
     @Nonnull
-    public static String normalizePath( @Nonnull String path )
+    private static String normalizePath( @Nonnull String path )
     {
         return path.replace( '\\', '/' );
     }
 
+    @Nonnull
+    public static String normalizeFileInfo( @Nonnull FileInfo fileInfo )
+    {
+        String name = fileInfo.getName();
+        name = normalizePath( name );
+        return name.replace( File.separatorChar, '/' ); // How can this be anything but a no-op
+    }
+
+    public static boolean isPropertyFile( String sourceName )
+    {
+        return sourceName.toLowerCase( Locale.ENGLISH ).endsWith( ".properties" );
+    }
+
+    public static boolean isPropertyFile( File file )
+    {
+        return isPropertyFile( file.getName());
+    }
 }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtils.java b/src/main/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtils.java
index 0a680a4..465ccb6 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtils.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtils.java
@@ -79,19 +79,6 @@
         return distributionName;
     }
 
-    /**
-     * @deprecated Use
-     *             {@link AssemblyFormatUtils#getOutputDirectory(String, MavenProject, MavenProject, String, AssemblerConfigurationSource)}
-     *             instead.
-     */
-    @Deprecated
-    public static String getOutputDirectory( final String output, final MavenProject mainProject,
-                                             final MavenProject artifactProject, final String finalName )
-        throws AssemblyFormattingException
-    {
-        return getOutputDirectory( output, mainProject, null, artifactProject, finalName, null );
-    }
-
     public static String getOutputDirectory( final String output, final MavenProject mainProject,
                                              final MavenProject artifactProject, final String finalName,
                                              final AssemblerConfigurationSource configSource )
@@ -240,7 +227,7 @@
         catch ( final IOException e )
         {
             throw new AssemblyFormattingException( "Failed to retrieve OS environment variables. Reason: "
-                            + e.getMessage(), e );
+                + e.getMessage(), e );
         }
 
         try
@@ -270,19 +257,6 @@
         return value;
     }
 
-    /**
-     * @deprecated Use
-     *             {@link AssemblyFormatUtils#evaluateFileNameMapping(String, Artifact, MavenProject, MavenProject, AssemblerConfigurationSource)}
-     *             instead.
-     */
-    @Deprecated
-    public static String evaluateFileNameMapping( final String expression, final Artifact artifact,
-                                                  final MavenProject mainProject, final MavenProject artifactProject )
-        throws AssemblyFormattingException
-    {
-        return evaluateFileNameMapping( expression, artifact, mainProject, null, null, artifactProject, null );
-    }
-
     public static String evaluateFileNameMapping( final String expression, final Artifact artifact,
                                                   final MavenProject mainProject, final MavenProject artifactProject,
                                                   final AssemblerConfigurationSource configSource )
@@ -467,7 +441,7 @@
         catch ( final IOException e )
         {
             throw new AssemblyFormattingException( "Failed to retrieve OS environment variables. Reason: "
-                            + e.getMessage(), e );
+                + e.getMessage(), e );
         }
 
         try
@@ -477,7 +451,7 @@
         catch ( final InterpolationException e )
         {
             throw new AssemblyFormattingException( "Failed to interpolate output filename mapping. Reason: "
-                            + e.getMessage(), e );
+                + e.getMessage(), e );
         }
 
         value = StringUtils.replace( value, "//", "/" );
@@ -490,11 +464,9 @@
     public static String fixRelativeRefs( String src )
     {
         String value = src;
-        
-        String[] separators = {
-            "/", "\\"
-        };
-        
+
+        String[] separators = { "/", "\\" };
+
         String finalSep = null;
         for ( String sep : separators )
         {
@@ -502,12 +474,12 @@
             {
                 finalSep = sep;
             }
-            
-            if (value.contains("." + sep))
+
+            if ( value.contains( "." + sep ) )
             {
                 List<String> parts = new ArrayList<String>();
                 parts.addAll( Arrays.asList( value.split( sep.replace( "\\", "\\\\" ) ) ) );
-                
+
                 for ( ListIterator<String> it = parts.listIterator(); it.hasNext(); )
                 {
                     String part = it.next();
@@ -525,16 +497,16 @@
                         }
                     }
                 }
-                
+
                 value = StringUtils.join( parts.iterator(), sep );
             }
         }
-        
+
         if ( finalSep != null && value.length() > 0 && !value.endsWith( finalSep ) )
         {
             value += finalSep;
         }
-        
+
         return value;
     }
 }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/utils/FilterUtils.java b/src/main/java/org/apache/maven/plugin/assembly/utils/FilterUtils.java
index 59c4c86..fabc47a 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/utils/FilterUtils.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/utils/FilterUtils.java
@@ -80,9 +80,11 @@
             }
         }
 
-        for (final PatternIncludesArtifactFilter f : allFilters) {
-            if (f != null) {
-                f.reportMissedCriteria(logger);
+        for ( final PatternIncludesArtifactFilter f : allFilters )
+        {
+            if ( f != null )
+            {
+                f.reportMissedCriteria( logger );
             }
         }
     }
@@ -149,13 +151,16 @@
 
         reportFilteringStatistics( allFilters, logger );
 
-        for (final ArtifactFilter f : allFilters) {
-            if (f instanceof StatisticsReportingArtifactFilter) {
+        for ( final ArtifactFilter f : allFilters )
+        {
+            if ( f instanceof StatisticsReportingArtifactFilter )
+            {
                 final StatisticsReportingArtifactFilter sFilter = (StatisticsReportingArtifactFilter) f;
 
-                if (strictFiltering && sFilter.hasMissedCriteria()) {
+                if ( strictFiltering && sFilter.hasMissedCriteria() )
+                {
                     throw new InvalidAssemblerConfigurationException(
-                            "One or more filters had unmatched criteria. Check debug log for more information.");
+                                                                      "One or more filters had unmatched criteria. Check debug log for more information." );
                 }
             }
         }
@@ -163,16 +168,19 @@
 
     public static void reportFilteringStatistics( final Collection<ArtifactFilter> filters, final Logger logger )
     {
-        for (final ArtifactFilter f : filters) {
-            if (f instanceof StatisticsReportingArtifactFilter) {
+        for ( final ArtifactFilter f : filters )
+        {
+            if ( f instanceof StatisticsReportingArtifactFilter )
+            {
                 final StatisticsReportingArtifactFilter sFilter = (StatisticsReportingArtifactFilter) f;
 
-                if (logger.isDebugEnabled()) {
-                    logger.debug("Statistics for " + sFilter + "\n");
+                if ( logger.isDebugEnabled() )
+                {
+                    logger.debug( "Statistics for " + sFilter + "\n" );
                 }
 
-                sFilter.reportMissedCriteria(logger);
-                sFilter.reportFilteredArtifacts(logger);
+                sFilter.reportMissedCriteria( logger );
+                sFilter.reportFilteredArtifacts( logger );
             }
         }
     }
diff --git a/src/main/java/org/apache/maven/plugin/assembly/utils/LineEndings.java b/src/main/java/org/apache/maven/plugin/assembly/utils/LineEndings.java
new file mode 100644
index 0000000..469b006
--- /dev/null
+++ b/src/main/java/org/apache/maven/plugin/assembly/utils/LineEndings.java
@@ -0,0 +1,49 @@
+package org.apache.maven.plugin.assembly.utils;
+
+/*
+ * 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.
+ */
+
+/**
+ * Enumeration to keep the different line ending types we support.
+ * 
+ * @author Karl-Heinz Marbaise <a href="mailto:khmarbaise@apache.org">khmarbaise@apache.org</a>
+ */
+public enum LineEndings
+{
+    keep( null ), dos( "\r\n" ), windows( "\r\n" ), unix( "\n" ), crlf( "\r\n" ), lf( "\n" );
+
+    private final String lineEndingCharacters;
+
+    private LineEndings( String lineEndingCharacters )
+    {
+        this.lineEndingCharacters = lineEndingCharacters;
+    }
+
+    public boolean isNewLine(){
+        return this== unix || this == lf;
+    }
+    public boolean isCrLF(){
+        return this== windows || this == crlf || this == dos;
+    }
+
+    public String getLineEndingCharacters()
+    {
+        return this.lineEndingCharacters;
+    }
+}
\ No newline at end of file
diff --git a/src/main/java/org/apache/maven/plugin/assembly/utils/LineEndingsUtils.java b/src/main/java/org/apache/maven/plugin/assembly/utils/LineEndingsUtils.java
new file mode 100644
index 0000000..9c4001d
--- /dev/null
+++ b/src/main/java/org/apache/maven/plugin/assembly/utils/LineEndingsUtils.java
@@ -0,0 +1,205 @@
+package org.apache.maven.plugin.assembly.utils;
+
+/*
+ * 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.
+ */
+
+import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
+import org.codehaus.plexus.util.IOUtil;
+
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
+import java.io.BufferedReader;
+import java.io.BufferedWriter;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.OutputStreamWriter;
+import java.io.RandomAccessFile;
+
+/**
+ * Line Ending class which contains convenience methods to change line endings.
+ */
+public final class LineEndingsUtils
+{
+
+    private LineEndingsUtils()
+    {
+        // prevent creations of instances.
+    }
+
+    /**
+     * Converts the line endings of a file, writing a new file. The encoding of reading and writing can be specified.
+     *
+     * @param source      The source file, not null
+     * @param dest        The destination file, not null
+     * @param lineEndings This is the result of the getLineEndingChars(..) method in this utility class; the actual
+     *                    line-ending characters, not null.
+     * @param atEndOfFile The end-of-file line ending, if true then the resulting file will have a new line at the end
+     *                    even if the input didn't have one, if false then the resulting file will have no new line at the end
+     *                    even if the input did have one, null to determine whether to have a new line at the end of the file
+     *                    based on the input file
+     * @param encoding    The encoding to use, null for platform encoding
+     */
+    public static void convertLineEndings( @Nonnull File source, @Nonnull File dest, LineEndings lineEndings,
+                                           Boolean atEndOfFile, String encoding )
+        throws IOException
+    {
+        // MASSEMBLY-637, MASSEMBLY-96
+        // find characters at the end of the file
+        // needed to preserve the last line ending
+        // only check for LF (as CRLF also ends in LF)
+        String eofChars = "";
+        if ( atEndOfFile == null )
+        {
+            RandomAccessFile raf = null;
+            try
+            {
+                if ( source.length() >= 1 )
+                {
+                    raf = new RandomAccessFile( source, "r" );
+                    raf.seek( source.length() - 1 );
+                    byte last = raf.readByte();
+                    if ( last == '\n' )
+                    {
+                        eofChars = lineEndings.getLineEndingCharacters();
+                    }
+                }
+            }
+            finally
+            {
+                if ( raf != null )
+                {
+                    try
+                    {
+                        raf.close();
+                    }
+                    catch ( IOException ex )
+                    {
+                        // ignore
+                    }
+                }
+            }
+        }
+        else if ( atEndOfFile )
+        {
+            eofChars = lineEndings.getLineEndingCharacters();
+        }
+
+        BufferedReader in = null;
+        BufferedWriter out = null;
+        try
+        {
+            if ( encoding == null )
+            {
+                // platform encoding
+                in = new BufferedReader( new InputStreamReader( new FileInputStream( source ) ) );
+                out = new BufferedWriter( new OutputStreamWriter( new FileOutputStream( dest ) ) );
+            }
+            else
+            {
+                // MASSEMBLY-371
+                in = new BufferedReader( new InputStreamReader( new FileInputStream( source ), encoding ) );
+                out = new BufferedWriter( new OutputStreamWriter( new FileOutputStream( dest ), encoding ) );
+            }
+
+            String line;
+
+            line = in.readLine();
+            while ( line != null )
+            {
+                out.write( line );
+                line = in.readLine();
+                if ( line != null )
+                {
+                    out.write( lineEndings.getLineEndingCharacters() );
+                }
+                else
+                {
+                    out.write( eofChars );
+                }
+            }
+
+            out.flush();
+        }
+        finally
+        {
+            IOUtil.close( in );
+            IOUtil.close( out );
+        }
+    }
+
+    /**
+     * Converts the line endings of a file, writing a new file. The encoding of reading and writing can be specified.
+     *
+     * @param in          The source reader
+     * @param lineEndings This is the result of the getLineEndingChars(..) method in this utility class; the actual
+     *                    line-ending characters, not null.
+     * @param in          with proper line endings.
+     */
+    public static InputStream lineEndingConverter( @Nonnull InputStream in, LineEndings lineEndings )
+        throws IOException
+    {
+        return lineEndings.isNewLine() ? new LinuxLineFeedInputStream( in, false )
+            : lineEndings.isCrLF() ? new WindowsLineFeedInputStream( in, false ) : in;
+    }
+
+    public static LineEndings getLineEnding( @Nullable String lineEnding )
+        throws AssemblyFormattingException
+    {
+        LineEndings result = LineEndings.keep;
+        if ( lineEnding != null )
+        {
+            try
+            {
+                result = LineEndings.valueOf( lineEnding );
+            }
+            catch ( IllegalArgumentException e )
+            {
+                throw new AssemblyFormattingException( "Illegal lineEnding specified: '" + lineEnding + "'", e );
+            }
+        }
+        return result;
+    }
+
+    @Nullable public static String getLineEndingCharacters( @Nullable String lineEnding )
+        throws AssemblyFormattingException
+    {
+
+        String value = lineEnding;
+
+        if ( lineEnding != null )
+        {
+
+            try
+            {
+                value = LineEndings.valueOf( lineEnding ).getLineEndingCharacters();
+            }
+            catch ( IllegalArgumentException e )
+            {
+                throw new AssemblyFormattingException( "Illegal lineEnding specified: '" + lineEnding + "'", e );
+            }
+        }
+
+        return value;
+    }
+
+}
diff --git a/src/main/java/org/apache/maven/plugin/assembly/utils/LinuxLineFeedInputStream.java b/src/main/java/org/apache/maven/plugin/assembly/utils/LinuxLineFeedInputStream.java
new file mode 100644
index 0000000..6ff1899
--- /dev/null
+++ b/src/main/java/org/apache/maven/plugin/assembly/utils/LinuxLineFeedInputStream.java
@@ -0,0 +1,109 @@
+package org.apache.maven.plugin.assembly.utils;
+
+/*
+ * 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.
+ */
+
+import java.io.IOException;
+import java.io.InputStream;
+
+/**
+ * @author Kristian Rosenvold
+ */
+class LinuxLineFeedInputStream
+    extends InputStream
+{
+
+    private boolean slashNSeen = false;
+
+    private boolean eofSeen = false;
+
+    private final InputStream target;
+
+    private final boolean ensureLineFeedAtEndOfFile;
+
+    public LinuxLineFeedInputStream( InputStream in, boolean ensureLineFeedAtEndOfFile )
+    {
+        this.target = in;
+        this.ensureLineFeedAtEndOfFile = ensureLineFeedAtEndOfFile;
+    }
+
+    private int readWithUpdate()
+        throws IOException
+    {
+        final int target = this.target.read();
+        eofSeen = target == -1;
+        if ( eofSeen )
+        {
+            return target;
+        }
+        slashNSeen = target == '\n';
+        return target;
+    }
+
+    @Override public int read()
+        throws IOException
+    {
+        if ( eofSeen )
+        {
+            return eofGame();
+        }
+        else
+        {
+            int target = readWithUpdate();
+            if ( eofSeen )
+            {
+                return eofGame();
+            }
+            if ( target == '\r' )
+            {
+                target = readWithUpdate();
+            }
+            return target;
+        }
+    }
+
+    private int eofGame()
+    {
+        if ( !ensureLineFeedAtEndOfFile )
+        {
+            return -1;
+        }
+        if ( !slashNSeen )
+        {
+            slashNSeen = true;
+            return '\n';
+        }
+        else
+        {
+            return -1;
+        }
+    }
+
+    @Override public void close()
+        throws IOException
+    {
+        super.close();
+        target.close();
+    }
+
+    @Override public synchronized void mark( int readlimit )
+    {
+        throw new UnsupportedOperationException( "Mark not implemented yet" );
+    }
+}
diff --git a/src/main/java/org/apache/maven/plugin/assembly/utils/TypeConversionUtils.java b/src/main/java/org/apache/maven/plugin/assembly/utils/TypeConversionUtils.java
index 0697ba1..f1bbfaa 100644
--- a/src/main/java/org/apache/maven/plugin/assembly/utils/TypeConversionUtils.java
+++ b/src/main/java/org/apache/maven/plugin/assembly/utils/TypeConversionUtils.java
@@ -58,16 +58,16 @@
 
         if ( ( list != null ) && !list.isEmpty() )
         {
-            result = list.toArray(new String[list.size()]);
+            result = list.toArray( new String[list.size()] );
         }
 
         return result;
     }
 
-    public static int modeToInt( final String mode, final Logger logger ) throws AssemblyFormattingException
+    public static int modeToInt( final String mode, final Logger logger )
+        throws AssemblyFormattingException
     {
-        if ( mode == null || mode.trim()
-                                 .length() < 1 )
+        if ( mode == null || mode.trim().length() < 1 )
         {
             return -1;
         }
@@ -93,7 +93,7 @@
     {
         final StringBuilder messages = new StringBuilder();
 
-        messages.append("The mode: ").append(Integer.toString(mode, 8)).append(" contains nonsensical permissions:");
+        messages.append( "The mode: " ).append( Integer.toString( mode, 8 ) ).append( " contains nonsensical permissions:" );
 
         boolean warn = false;
 
diff --git a/src/main/java/org/apache/maven/plugin/assembly/utils/WindowsLineFeedInputStream.java b/src/main/java/org/apache/maven/plugin/assembly/utils/WindowsLineFeedInputStream.java
new file mode 100644
index 0000000..4baebf7
--- /dev/null
+++ b/src/main/java/org/apache/maven/plugin/assembly/utils/WindowsLineFeedInputStream.java
@@ -0,0 +1,130 @@
+package org.apache.maven.plugin.assembly.utils;
+
+/*
+ * 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.
+ */
+
+import java.io.IOException;
+import java.io.InputStream;
+
+/**
+ * @author Kristian Rosenvold
+ */
+class WindowsLineFeedInputStream
+    extends InputStream
+{
+
+    private boolean slashRSeen = false;
+
+    private boolean slashNSeen = false;
+
+    private boolean injectSlashN = false;
+
+    private boolean eofSeen = false;
+
+    private final InputStream target;
+
+    private final boolean ensureLineFeedAtEndOfFile;
+
+    public WindowsLineFeedInputStream( InputStream in, boolean ensureLineFeedAtEndOfFile )
+    {
+        this.target = in;
+        this.ensureLineFeedAtEndOfFile = ensureLineFeedAtEndOfFile;
+    }
+
+    private int readWithUpdate()
+        throws IOException
+    {
+        final int target = this.target.read();
+        eofSeen = target == -1;
+        if ( eofSeen )
+        {
+            return target;
+        }
+        slashRSeen = target == '\r';
+        slashNSeen = target == '\n';
+        return target;
+    }
+
+    @Override public int read()
+        throws IOException
+    {
+        if ( eofSeen )
+        {
+            return eofGame();
+        }
+        else if ( injectSlashN )
+        {
+            injectSlashN = false;
+            return '\n';
+        }
+        else
+        {
+            boolean prevWasSlashR = slashRSeen;
+            int target = readWithUpdate();
+            if ( eofSeen )
+            {
+                return eofGame();
+            }
+            if ( target == '\n' )
+            {
+                if ( !prevWasSlashR )
+                {
+                    injectSlashN = true;
+                    return '\r';
+                }
+            }
+            return target;
+        }
+    }
+
+    private int eofGame()
+    {
+        if ( !ensureLineFeedAtEndOfFile )
+        {
+            return -1;
+        }
+        if ( !slashNSeen && !slashRSeen )
+        {
+            slashRSeen = true;
+            return '\r';
+        }
+        if ( !slashNSeen )
+        {
+            slashRSeen = false;
+            slashNSeen = true;
+            return '\n';
+        }
+        else
+        {
+            return -1;
+        }
+    }
+
+    @Override public void close()
+        throws IOException
+    {
+        super.close();
+        target.close();
+    }
+
+    @Override public synchronized void mark( int readlimit )
+    {
+        throw new UnsupportedOperationException( "Mark not implemented yet" );
+    }
+}
diff --git a/src/main/mdo/descriptor.mdo b/src/main/mdo/descriptor.mdo
index 8c9f6a1..11b522b 100644
--- a/src/main/mdo/descriptor.mdo
+++ b/src/main/mdo/descriptor.mdo
@@ -106,8 +106,8 @@
             <ul>
               <li><b>"zip"</b> - Creates a ZIP file format</li>
               <li><b>"tar"</b> - Creates a TAR format</li>
-              <li><b>"tar.gz"</b> - Creates a gzip'd TAR format</li>
-              <li><b>"tar.bz2"</b> - Creates a bzip'd TAR format</li>
+              <li><b>"tar.gz"</b> or <b>"tgz"</b> - Creates a gzip'd TAR format</li>
+              <li><b>"tar.bz2"</b> or <b>"tbz2"</b> - Creates a bzip'd TAR format</li>
               <li><b>"jar"</b> - Creates a JAR format</li>
               <li><b>"dir"</b> - Creates an exploded directory format</li>
               <li><b>"war"</b> - Creates a WAR format</li>
diff --git a/src/main/resources/META-INF/plexus/components.xml b/src/main/resources/META-INF/plexus/components.xml
index 10fecf8..9475059 100644
--- a/src/main/resources/META-INF/plexus/components.xml
+++ b/src/main/resources/META-INF/plexus/components.xml
@@ -33,19 +33,5 @@
       <implementation>org.codehaus.plexus.components.io.resources.PlexusIoZipFileResourceCollection</implementation>
       <instantiation-strategy>per-lookup</instantiation-strategy>
     </component>
-
-    <component>
-      <role>org.apache.maven.plugin.assembly.filter.ContainerDescriptorHandler</role>
-      <role-hint>plexus</role-hint>
-      <implementation>org.apache.maven.plugin.assembly.filter.ComponentsXmlArchiverFileFilter</implementation>
-      <instantiation-strategy>per-lookup</instantiation-strategy>
-    </component>
-    
-    <component>
-      <role>org.apache.maven.plugin.assembly.filter.ContainerDescriptorHandler</role>
-      <role-hint>file-aggregator</role-hint>
-      <implementation>org.apache.maven.plugin.assembly.filter.SimpleAggregatingDescriptorHandler</implementation>
-      <instantiation-strategy>per-lookup</instantiation-strategy>
-    </component>
   </components>
 </component-set>
diff --git a/src/site/apt/features.apt b/src/site/apt/features.apt
index d92b5df..ee25b5d 100644
--- a/src/site/apt/features.apt
+++ b/src/site/apt/features.apt
@@ -46,7 +46,7 @@
 
   * Reusable assembly-descriptor components <[2.1]>
 
-  * Supported archive formats include: zip, tar, tar.gz, tar.bz2, jar, dir, war
+  * Supported archive formats include: zip, tar, tar.gz (or tgz), tar.bz2 (or tbz2), jar, dir, war
    (and any other format that the ArchiveManager has been configured for).
 
 
diff --git a/src/site/apt/index.apt.vm b/src/site/apt/index.apt.vm
index 479f2f3..86be29e 100644
--- a/src/site/apt/index.apt.vm
+++ b/src/site/apt/index.apt.vm
@@ -50,9 +50,9 @@
 
     * tar
 
-    * tar.gz
+    * tar.gz (or tgz)
 
-    * tar.bz2
+    * tar.bz2 (or tbz2)
 
     * jar
 
diff --git a/src/site/resources/architecture/assembly-plugin-architecture-notes.html/index.html b/src/site/resources/architecture/assembly-plugin-architecture-notes.html/index.html
index e070a83..3356649 100644
--- a/src/site/resources/architecture/assembly-plugin-architecture-notes.html/index.html
+++ b/src/site/resources/architecture/assembly-plugin-architecture-notes.html/index.html
@@ -1,4 +1,22 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<!--
+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.
+-->
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
diff --git a/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java b/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java
index 9e52aff..b0ce141 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java
@@ -19,32 +19,18 @@
  * under the License.
  */
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.fail;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-
 import junit.framework.Assert;
-
+import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.model.Model;
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.AssemblyContext;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
 import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
 import org.apache.maven.plugin.assembly.archive.phase.AssemblyArchiverPhase;
 import org.apache.maven.plugin.assembly.artifact.DependencyResolutionException;
 import org.apache.maven.plugin.assembly.artifact.DependencyResolver;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
 import org.apache.maven.plugin.assembly.model.Assembly;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
 import org.apache.maven.plugin.assembly.testutils.TestFileManager;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.DefaultPlexusContainer;
@@ -54,7 +40,6 @@
 import org.codehaus.plexus.archiver.Archiver;
 import org.codehaus.plexus.archiver.ArchiverException;
 import org.codehaus.plexus.archiver.FileSet;
-import org.codehaus.plexus.archiver.FinalizerEnabled;
 import org.codehaus.plexus.archiver.ResourceIterator;
 import org.codehaus.plexus.archiver.manager.ArchiverManager;
 import org.codehaus.plexus.archiver.manager.NoSuchArchiverException;
@@ -68,12 +53,23 @@
 import org.codehaus.plexus.logging.console.ConsoleLogger;
 import org.codehaus.plexus.util.FileUtils;
 import org.easymock.MockControl;
+import org.easymock.classextension.EasyMockSupport;
 import org.junit.AfterClass;
 import org.junit.Before;
 import org.junit.Test;
 
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+
+import static org.easymock.EasyMock.*;
+import static org.junit.Assert.*;
+
 public class DefaultAssemblyArchiverTest
-// extends PlexusTestCase
 {
 
     private static final TestFileManager fileManager = new TestFileManager( "def-assy-archiver.test.", "" );
@@ -89,12 +85,6 @@
         container.start();
     }
 
-    public void shutdown()
-    {
-        container.dispose();
-    }
-
-    // @Override
     @AfterClass
     public static void tearDown()
         throws Exception
@@ -106,18 +96,17 @@
     public void failWhenAssemblyIdIsNull()
         throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
+
         final MockAndControlForAssemblyArchiver macMgr = new MockAndControlForAssemblyArchiver( mm );
 
-        final MockControl csControl = MockControl.createControl( AssemblerConfigurationSource.class );
-        mm.add( csControl );
-
-        final AssemblerConfigurationSource configSource = (AssemblerConfigurationSource) csControl.getMock();
+        final AssemblerConfigurationSource configSource = mm.createControl().createMock(
+            AssemblerConfigurationSource.class );
 
         mm.replayAll();
 
         final DefaultAssemblyArchiver archiver = createSubject( macMgr, null, null );
-        archiver.createArchive( new Assembly(), "full-name", "zip", configSource, false);
+        archiver.createArchive( new Assembly(), "full-name", "zip", configSource, false );
 
         mm.verifyAll();
     }
@@ -127,37 +116,26 @@
         throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException,
         IOException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForAssemblyArchiver macMgr = new MockAndControlForAssemblyArchiver( mm );
 
         macMgr.expectGetArchiver( "zip", Archiver.class );
         macMgr.expectGetDestFile( new File( "test" ) );
 
-        final MockControl phaseControl = MockControl.createControl( AssemblyArchiverPhase.class );
-        mm.add( phaseControl );
+        final AssemblyArchiverPhase phase = mm.createControl().createMock(AssemblyArchiverPhase.class  );
 
-        final AssemblyArchiverPhase phase = (AssemblyArchiverPhase) phaseControl.getMock();
+        phase.execute( (ResolvedAssembly)anyObject(), (Archiver)anyObject(), (AssemblerConfigurationSource)anyObject() );
 
-        phase.execute( null, null, null, null );
-        phaseControl.setMatcher( MockControl.ALWAYS_MATCHER );
-
-        final MockControl csControl = MockControl.createControl( AssemblerConfigurationSource.class );
-        mm.add( csControl );
-
-        final AssemblerConfigurationSource configSource = (AssemblerConfigurationSource) csControl.getMock();
+        final AssemblerConfigurationSource configSource =
+            mm.createControl().createMock( AssemblerConfigurationSource.class );
 
         final File tempDir = fileManager.createTempDir();
         FileUtils.deleteDirectory( tempDir );
 
-        configSource.getTemporaryRootDirectory();
-        csControl.setReturnValue( tempDir, MockControl.ZERO_OR_MORE );
-
-        configSource.isDryRun();
-        csControl.setReturnValue( false, MockControl.ZERO_OR_MORE );
-
-        configSource.isIgnoreDirFormatExtensions();
-        csControl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+        expect(configSource.getTemporaryRootDirectory()).andReturn( tempDir ).anyTimes();
+        expect( configSource.isDryRun()).andReturn( false ).anyTimes();
+        expect( configSource.isIgnoreDirFormatExtensions()).andReturn( false ).anyTimes();
 
         final File outDir = fileManager.createTempDir();
 
@@ -176,33 +154,20 @@
             fail( "Should never happen" );
         }
 
-        configSource.getOutputDirectory();
-        csControl.setReturnValue( outDir );
-
-        configSource.getFinalName();
-        csControl.setReturnValue( "finalName" );
-
-        configSource.getArchiverConfig();
-        csControl.setReturnValue( null, MockControl.ZERO_OR_MORE );
-
-        configSource.getWorkingDirectory();
-        csControl.setReturnValue( new File( "." ), MockControl.ZERO_OR_MORE );
-
-        configSource.isUpdateOnly();
-        csControl.setReturnValue( false, MockControl.ZERO_OR_MORE );
-
-        configSource.isIgnorePermissions();
-        csControl.setReturnValue( true, MockControl.ZERO_OR_MORE );
+        expect(configSource.getOutputDirectory()).andReturn( outDir );
+        expect( configSource.getFinalName() ).andReturn( "finalName" );
+        expect( configSource.getArchiverConfig()).andReturn( null ).anyTimes();
+        expect(    configSource.getWorkingDirectory()).andReturn( new File( "." )).anyTimes();
+        expect( configSource.isUpdateOnly()).andReturn( false ).anyTimes();
+        expect( configSource.isIgnorePermissions()).andReturn( false ).anyTimes();
 
         final Assembly assembly = new Assembly();
         assembly.setId( "id" );
 
-        final AssemblyContext context = new DefaultAssemblyContext();
-
         try
         {
-            macMgr.dependencyResolver.resolve( assembly, configSource, context );
-            macMgr.dependencyResolverControl.setMatcher( MockControl.ALWAYS_MATCHER );
+            expect( macMgr.dependencyResolver.resolve( assembly, configSource )).andReturn( new HashSet<Artifact>(  ) );
+//            macMgr.dependencyResolverControl.setMatcher( MockControl.ALWAYS_MATCHER );
         }
         catch ( final DependencyResolutionException e )
         {
@@ -213,7 +178,7 @@
 
         final DefaultAssemblyArchiver subject = createSubject( macMgr, Collections.singletonList( phase ), null );
 
-        subject.createArchive( assembly, "full-name", "zip", configSource, false);
+        subject.createArchive( assembly, "full-name", "zip", configSource, false );
 
         mm.verifyAll();
     }
@@ -222,7 +187,7 @@
     public void testCreateArchiver_ShouldConfigureArchiver()
         throws NoSuchArchiverException, ArchiverException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForAssemblyArchiver macArchiverManager = new MockAndControlForAssemblyArchiver( mm );
 
@@ -230,53 +195,38 @@
 
         macArchiverManager.expectGetArchiver( "dummy", archiver );
 
-        final MockControl configCtl = MockControl.createControl( AssemblerConfigurationSource.class );
-        final AssemblerConfigurationSource configSource = (AssemblerConfigurationSource) configCtl.getMock();
+        final AssemblerConfigurationSource configSource = mm.createMock(  AssemblerConfigurationSource.class);
 
         final String simpleConfig = "value";
 
-        configSource.getArchiverConfig();
-        configCtl.setReturnValue( "<configuration><simpleConfig>" + simpleConfig + "</simpleConfig></configuration>",
-                                  MockControl.ZERO_OR_MORE );
+        expect( configSource.getArchiverConfig()).andReturn(
+        "<configuration><simpleConfig>" + simpleConfig + "</simpleConfig></configuration>").anyTimes();
 
         final MavenProject project = new MavenProject( new Model() );
 
-        configSource.getProject();
-        configCtl.setReturnValue( project, MockControl.ZERO_OR_MORE );
+        expect(configSource.getProject()).andReturn( project ).anyTimes();
 
-        configSource.getMavenSession();
-        configCtl.setReturnValue( null, MockControl.ZERO_OR_MORE );
+        expect(configSource.getMavenSession()).andReturn( null ).anyTimes();
 
-        configSource.isDryRun();
-        configCtl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+        expect(configSource.isDryRun()).andReturn( false ).anyTimes();
 
-        configSource.getWorkingDirectory();
-        configCtl.setReturnValue( new File( "." ), MockControl.ZERO_OR_MORE );
+        expect(configSource.getWorkingDirectory()).andReturn(  new File( "." )).anyTimes();
 
-        configSource.isUpdateOnly();
-        configCtl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+        expect(configSource.isUpdateOnly()).andReturn( false ).anyTimes();
 
-        final MockControl lrCtl = MockControl.createControl( ArtifactRepository.class );
-        final ArtifactRepository lr = (ArtifactRepository) lrCtl.getMock();
-        mm.add( lrCtl );
+        final ArtifactRepository lr = mm.createMock( ArtifactRepository.class );
 
-        lr.getBasedir();
-        lrCtl.setReturnValue( "/path/to/local/repo", MockControl.ZERO_OR_MORE );
+        expect(lr.getBasedir()).andReturn(  "/path/to/local/repo" ).anyTimes();
 
-        configSource.getLocalRepository();
-        configCtl.setReturnValue( lr, MockControl.ZERO_OR_MORE );
-
-        configSource.isIgnorePermissions();
-        configCtl.setReturnValue( true, MockControl.ZERO_OR_MORE );
-
-        mm.add( configCtl );
+        expect(configSource.getLocalRepository()).andReturn( lr ).anyTimes();
+        expect(configSource.isIgnorePermissions()).andReturn( true );
 
         mm.replayAll();
 
         final DefaultAssemblyArchiver subject =
             createSubject( macArchiverManager, new ArrayList<AssemblyArchiverPhase>(), null );
 
-        subject.createArchiver( "dummy", false, "finalName", configSource, null, false);
+        subject.createArchiver( "dummy", false, "finalName", configSource, null, false );
 
         assertEquals( simpleConfig, archiver.getSimpleConfig() );
 
@@ -287,7 +237,7 @@
     public void testCreateArchiver_ShouldCreateTarArchiverWithNoCompression()
         throws NoSuchArchiverException, ArchiverException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final TestTarArchiver ttArchiver = new TestTarArchiver();
 
@@ -295,44 +245,32 @@
 
         macArchiverManager.expectGetArchiver( "tar", ttArchiver );
 
-        final MockControl configCtl = MockControl.createControl( AssemblerConfigurationSource.class );
-        final AssemblerConfigurationSource configSource = (AssemblerConfigurationSource) configCtl.getMock();
+        final AssemblerConfigurationSource configSource = mm.createMock( AssemblerConfigurationSource.class );
 
-        configSource.getTarLongFileMode();
-        configCtl.setReturnValue( TarLongFileMode.FAIL, MockControl.ZERO_OR_MORE );
+        expect( configSource.getTarLongFileMode()).andReturn( TarLongFileMode.fail.toString()).anyTimes();
+        expect( configSource.isDryRun()).andReturn( false ).anyTimes();
 
-        configSource.isDryRun();
-        configCtl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+        expect( configSource.getArchiverConfig()).andReturn( null ).anyTimes();
 
-        configSource.getArchiverConfig();
-        configCtl.setReturnValue( null, MockControl.ZERO_OR_MORE );
+        expect( configSource.getProject()).andReturn( new MavenProject( new Model() ) ).anyTimes();
 
-        configSource.getProject();
-        configCtl.setReturnValue( new MavenProject( new Model() ), MockControl.ZERO_OR_MORE );
+        expect( configSource.getJarArchiveConfiguration()).andReturn( null ).anyTimes();
 
-        configSource.getJarArchiveConfiguration();
-        configCtl.setReturnValue( null, MockControl.ZERO_OR_MORE );
+        expect( configSource.getWorkingDirectory()).andReturn(  new File( "." ) ).anyTimes();
 
-        configSource.getWorkingDirectory();
-        configCtl.setReturnValue( new File( "." ), MockControl.ZERO_OR_MORE );
+        expect( configSource.isUpdateOnly()).andReturn( false ).anyTimes();
 
-        configSource.isUpdateOnly();
-        configCtl.setReturnValue( false, MockControl.ZERO_OR_MORE );
-
-        configSource.isIgnorePermissions();
-        configCtl.setReturnValue( true, MockControl.ZERO_OR_MORE );
-
-        mm.add( configCtl );
+        expect( configSource.isIgnorePermissions()).andReturn( true ).anyTimes();
 
         mm.replayAll();
 
         final DefaultAssemblyArchiver subject =
             createSubject( macArchiverManager, new ArrayList<AssemblyArchiverPhase>(), null );
 
-        subject.createArchiver( "tar", false, "finalName", configSource, null, false);
+        subject.createArchiver( "tar", false, "finalName", configSource, null, false );
 
         assertNull( ttArchiver.compressionMethod );
-        assertEquals( TarLongFileMode.FAIL, ttArchiver.longFileMode.getValue() );
+        assertEquals( TarLongFileMode.fail, ttArchiver.longFileMode );
 
         mm.verifyAll();
     }
@@ -341,7 +279,7 @@
     public void testCreateArchiver_ShouldCreateWarArchiverWithIgnoreWebxmlSetToFalse()
         throws NoSuchArchiverException, ArchiverException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final TestWarArchiver twArchiver = new TestWarArchiver();
 
@@ -349,41 +287,23 @@
 
         macArchiverManager.expectGetArchiver( "war", twArchiver );
 
-        final MockControl configCtl = MockControl.createControl( AssemblerConfigurationSource.class );
-        final AssemblerConfigurationSource configSource = (AssemblerConfigurationSource) configCtl.getMock();
+        final AssemblerConfigurationSource configSource = mm.createMock( AssemblerConfigurationSource.class );
 
-        configSource.isDryRun();
-        configCtl.setReturnValue( false, MockControl.ZERO_OR_MORE );
-
-        configSource.getArchiverConfig();
-        configCtl.setReturnValue( null, MockControl.ZERO_OR_MORE );
-
-        configSource.getMavenSession();
-        configCtl.setReturnValue( null, MockControl.ZERO_OR_MORE );
-
-        configSource.getProject();
-        configCtl.setReturnValue( new MavenProject( new Model() ), MockControl.ZERO_OR_MORE );
-
-        configSource.getJarArchiveConfiguration();
-        configCtl.setReturnValue( null, MockControl.ZERO_OR_MORE );
-
-        configSource.getWorkingDirectory();
-        configCtl.setReturnValue( new File( "." ), MockControl.ZERO_OR_MORE );
-
-        configSource.isUpdateOnly();
-        configCtl.setReturnValue( false, MockControl.ZERO_OR_MORE );
-
-        configSource.isIgnorePermissions();
-        configCtl.setReturnValue( true, MockControl.ZERO_OR_MORE );
-
-        mm.add( configCtl );
+        expect( configSource.isDryRun()).andReturn( false ).anyTimes();
+        expect( configSource.getArchiverConfig()).andReturn( null ).anyTimes();
+        expect( configSource.getMavenSession()).andReturn( null ).anyTimes();
+        expect( configSource.getProject()).andReturn( new MavenProject( new Model() ) ).anyTimes();
+        expect( configSource.getJarArchiveConfiguration()).andReturn( null ).anyTimes();
+        expect( configSource.getWorkingDirectory()).andReturn( new File( "." ) ).anyTimes();
+        expect( configSource.isUpdateOnly()).andReturn( false ).anyTimes();
+        expect( configSource.isIgnorePermissions()).andReturn( true ).anyTimes();
 
         mm.replayAll();
 
         final DefaultAssemblyArchiver subject =
             createSubject( macArchiverManager, new ArrayList<AssemblyArchiverPhase>(), null );
 
-        subject.createArchiver( "war", false, null, configSource, null, false);
+        subject.createArchiver( "war", false, null, configSource, null, false );
 
         assertFalse( twArchiver.ignoreWebxml );
     }
@@ -392,7 +312,7 @@
     public void testCreateArchiver_ShouldCreateZipArchiver()
         throws NoSuchArchiverException, ArchiverException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final ZipArchiver archiver = new ZipArchiver();
 
@@ -400,143 +320,28 @@
 
         macArchiverManager.expectGetArchiver( "zip", archiver );
 
-        final MockControl configCtl = MockControl.createControl( AssemblerConfigurationSource.class );
-        final AssemblerConfigurationSource configSource = (AssemblerConfigurationSource) configCtl.getMock();
+        final AssemblerConfigurationSource configSource = mm.createMock( AssemblerConfigurationSource.class );
 
-        configSource.isDryRun();
-        configCtl.setReturnValue( false, MockControl.ZERO_OR_MORE );
-
-        configSource.getArchiverConfig();
-        configCtl.setReturnValue( null, MockControl.ZERO_OR_MORE );
-
-        configSource.getWorkingDirectory();
-        configCtl.setReturnValue( new File( "." ), MockControl.ZERO_OR_MORE );
-
-        configSource.isUpdateOnly();
-        configCtl.setReturnValue( false, MockControl.ZERO_OR_MORE );
-
-        configSource.isIgnorePermissions();
-        configCtl.setReturnValue( true, MockControl.ZERO_OR_MORE );
-
-        mm.add( configCtl );
+        expect( configSource.isDryRun()).andReturn( false ).anyTimes();
+        expect( configSource.getArchiverConfig()).andReturn( null ).anyTimes();
+        expect( configSource.getWorkingDirectory()).andReturn( new File( "." ) ).anyTimes();
+        expect( configSource.isUpdateOnly()).andReturn( false ).anyTimes();
+        expect( configSource.getJarArchiveConfiguration()).andReturn( null ).anyTimes();
+        expect( configSource.isIgnorePermissions()).andReturn( true ).anyTimes();
 
         mm.replayAll();
 
         final DefaultAssemblyArchiver subject =
             createSubject( macArchiverManager, new ArrayList<AssemblyArchiverPhase>(), null );
 
-        subject.createArchiver( "zip", false, null, configSource, null, false);
+        subject.createArchiver( "zip", false, null, configSource, null, false );
     }
 
-    // TODO: Re-implement these tests on the createArchiver(..) method. For now, they're no big loss.
-    // public void testConfigureArchiverFinalizers_ShouldDoNothingWhenNotSupportedByArchiver()
-    // {
-    // MockManager mm = new MockManager();
-    //
-    // MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
-    //
-    // macArchiverManager.createArchiver( Archiver.class );
-    //
-    // ComponentsXmlArchiverFileFilter filter = new ComponentsXmlArchiverFileFilter();
-    //
-    // mm.replayAll();
-    //
-    // DefaultAssemblyArchiver subject =
-    // createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
-    //
-    // subject.configureArchiverFinalizers( macArchiverManager.archiver, "format", null, filter );
-    //
-    // mm.verifyAll();
-    // }
-    //
-    // public void testConfigureArchiverFinalizers_ShouldAddManifestFinalizerWhenSupportedByArchiver()
-    // {
-    // MockManager mm = new MockManager();
-    //
-    // MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
-    //
-    // macArchiverManager.createArchiver( TestFinalizerFilteredArchiver.class );
-    //
-    // Set finalizerClasses = new HashSet();
-    // finalizerClasses.add( ComponentsXmlArchiverFileFilter.class );
-    // finalizerClasses.add( ManifestCreationFinalizer.class );
-    //
-    // macArchiverManager.expectSetArchiverFinalizers( finalizerClasses );
-    //
-    // ComponentsXmlArchiverFileFilter filter = new ComponentsXmlArchiverFileFilter();
-    //
-    // MockControl configCtl = MockControl.createControl( AssemblerConfigurationSource.class );
-    // AssemblerConfigurationSource configSource = (AssemblerConfigurationSource) configCtl.getMock();
-    //
-    // Model model = new Model();
-    // model.setGroupId( "group" );
-    // model.setArtifactId( "artifact" );
-    // model.setVersion( "1" );
-    //
-    // configSource.getProject();
-    // configCtl.setReturnValue( new MavenProject( model ), MockControl.ZERO_OR_MORE );
-    //
-    // configSource.getJarArchiveConfiguration();
-    // configCtl.setReturnValue( new MavenArchiveConfiguration() );
-    //
-    // mm.add( configCtl );
-    //
-    // mm.replayAll();
-    //
-    // DefaultAssemblyArchiver subject =
-    // createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
-    //
-    // subject.configureArchiverFinalizers( macArchiverManager.archiver, "jar", configSource, filter );
-    //
-    // mm.verifyAll();
-    // }
-    //
-    // public void testConfigureArchiverFilters_ShouldDoNothingWhenNotSupportedByArchiver()
-    // {
-    // MockManager mm = new MockManager();
-    //
-    // MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
-    //
-    // macArchiverManager.createArchiver( Archiver.class );
-    //
-    // ComponentsXmlArchiverFileFilter filter = new ComponentsXmlArchiverFileFilter();
-    //
-    // mm.replayAll();
-    //
-    // DefaultAssemblyArchiver subject =
-    // createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
-    //
-    // subject.configureArchiverFilters( macArchiverManager.archiver, filter );
-    //
-    // mm.verifyAll();
-    // }
-    //
-    // public void testConfigureArchiverFilters_ShouldAddComponentsFilterWhenSupportedByArchiver()
-    // {
-    // MockManager mm = new MockManager();
-    //
-    // MockAndControlForArchiverManager macArchiverManager = new MockAndControlForArchiverManager( mm );
-    //
-    // macArchiverManager.createArchiver( TestFinalizerFilteredArchiver.class );
-    // macArchiverManager.expectSetArchiverFilters();
-    //
-    // ComponentsXmlArchiverFileFilter filter = new ComponentsXmlArchiverFileFilter();
-    //
-    // mm.replayAll();
-    //
-    // DefaultAssemblyArchiver subject =
-    // createSubject( macArchiverManager.archiverManager, Collections.EMPTY_LIST, null );
-    //
-    // subject.configureArchiverFilters( macArchiverManager.archiver, filter );
-    //
-    // mm.verifyAll();
-    // }
-
     @Test
     public void testCreateWarArchiver_ShouldDisableIgnoreWebxmlOption()
         throws NoSuchArchiverException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final TestWarArchiver twArchiver = new TestWarArchiver();
 
@@ -558,93 +363,112 @@
     public void testCreateTarArchiver_ShouldNotInitializeCompression()
         throws NoSuchArchiverException, ArchiverException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final TestTarArchiver ttArchiver = new TestTarArchiver();
 
-        final MockAndControlForAssemblyArchiver macArchiverManager = new MockAndControlForAssemblyArchiver( mm );
+        final DefaultAssemblyArchiver subject = createSubject(mm, ttArchiver);
 
-        macArchiverManager.expectGetArchiver( "tar", ttArchiver );
-
-        mm.replayAll();
-
-        final DefaultAssemblyArchiver subject =
-            createSubject( macArchiverManager, new ArrayList<AssemblyArchiverPhase>(), null );
-
-        subject.createTarArchiver( "tar", TarLongFileMode.FAIL );
+        subject.createTarArchiver( "tar", TarLongFileMode.fail );
 
         assertNull( ttArchiver.compressionMethod );
-        assertEquals( TarLongFileMode.FAIL, ttArchiver.longFileMode.getValue() );
+        assertEquals( TarLongFileMode.fail, ttArchiver.longFileMode );
 
         mm.verifyAll();
     }
 
-    @Test
-    public void testCreateTarArchiver_ShouldInitializeGZipCompression()
-        throws NoSuchArchiverException, ArchiverException
-    {
-        final MockManager mm = new MockManager();
-
-        final TestTarArchiver ttArchiver = new TestTarArchiver();
-
+    private DefaultAssemblyArchiver createSubject(EasyMockSupport mm,
+            TestTarArchiver ttArchiver) throws NoSuchArchiverException {
         final MockAndControlForAssemblyArchiver macArchiverManager = new MockAndControlForAssemblyArchiver( mm );
 
         macArchiverManager.expectGetArchiver( "tar", ttArchiver );
 
         mm.replayAll();
 
-        final DefaultAssemblyArchiver subject =
-            createSubject( macArchiverManager, new ArrayList<AssemblyArchiverPhase>(), null );
+        return createSubject( macArchiverManager, new ArrayList<AssemblyArchiverPhase>(), null );
+    }
 
-        subject.createTarArchiver( "tar.gz", TarLongFileMode.FAIL );
+    @Test
+    public void testCreateTarArchiver_TarGzFormat_ShouldInitializeGZipCompression()
+        throws NoSuchArchiverException, ArchiverException
+    {
+        final EasyMockSupport mm = new EasyMockSupport();
 
-        assertEquals( "gzip", ttArchiver.compressionMethod.getValue() );
-        assertEquals( TarLongFileMode.FAIL, ttArchiver.longFileMode.getValue() );
+        final TestTarArchiver ttArchiver = new TestTarArchiver();
+
+        final DefaultAssemblyArchiver subject = createSubject(mm, ttArchiver);
+
+        subject.createTarArchiver( "tar.gz", TarLongFileMode.fail );
+
+        assertEquals( TarArchiver.TarCompressionMethod.gzip, ttArchiver.compressionMethod );
+        assertEquals( TarLongFileMode.fail, ttArchiver.longFileMode );
 
         mm.verifyAll();
     }
 
     @Test
-    public void testCreateTarArchiver_ShouldInitializeBZipCompression()
+    public void testCreateTarArchiver_TgzFormat_ShouldInitializeGZipCompression()
         throws NoSuchArchiverException, ArchiverException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final TestTarArchiver ttArchiver = new TestTarArchiver();
 
-        final MockAndControlForAssemblyArchiver macArchiverManager = new MockAndControlForAssemblyArchiver( mm );
+        final DefaultAssemblyArchiver subject = createSubject(mm, ttArchiver);
 
-        macArchiverManager.expectGetArchiver( "tar", ttArchiver );
+        subject.createTarArchiver( "tgz", TarLongFileMode.fail );
 
-        mm.replayAll();
-
-        final DefaultAssemblyArchiver subject =
-            createSubject( macArchiverManager, new ArrayList<AssemblyArchiverPhase>(), null );
-
-        subject.createTarArchiver( "tar.bz2", TarLongFileMode.FAIL );
-
-        assertEquals( "bzip2", ttArchiver.compressionMethod.getValue() );
-        assertEquals( TarLongFileMode.FAIL, ttArchiver.longFileMode.getValue() );
+        assertEquals( TarArchiver.TarCompressionMethod.gzip, ttArchiver.compressionMethod );
+        assertEquals( TarLongFileMode.fail, ttArchiver.longFileMode );
 
         mm.verifyAll();
     }
 
     @Test
-    public void testCreateTarArchiver_ShouldFailWithInvalidCompression()
+    public void testCreateTarArchiver_TarBz2Format_ShouldInitializeBZipCompression()
         throws NoSuchArchiverException, ArchiverException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final TestTarArchiver ttArchiver = new TestTarArchiver();
 
-        final MockAndControlForAssemblyArchiver macArchiverManager = new MockAndControlForAssemblyArchiver( mm );
+        final DefaultAssemblyArchiver subject = createSubject(mm, ttArchiver);
 
-        macArchiverManager.expectGetArchiver( "tar", ttArchiver );
+        subject.createTarArchiver( "tar.bz2", TarLongFileMode.fail );
 
-        mm.replayAll();
+        assertEquals( TarArchiver.TarCompressionMethod.bzip2, ttArchiver.compressionMethod );
+        assertEquals( TarLongFileMode.fail, ttArchiver.longFileMode );
 
-        final DefaultAssemblyArchiver subject =
-            createSubject( macArchiverManager, new ArrayList<AssemblyArchiverPhase>(), null );
+        mm.verifyAll();
+    }
+
+    @Test
+    public void testCreateTarArchiver_Tbz2Format_ShouldInitializeBZipCompression()
+        throws NoSuchArchiverException, ArchiverException
+    {
+        final EasyMockSupport mm = new EasyMockSupport();
+
+        final TestTarArchiver ttArchiver = new TestTarArchiver();
+
+        final DefaultAssemblyArchiver subject = createSubject(mm, ttArchiver);
+
+        subject.createTarArchiver( "tbz2", TarLongFileMode.fail );
+
+        assertEquals( TarArchiver.TarCompressionMethod.bzip2, ttArchiver.compressionMethod );
+        assertEquals( TarLongFileMode.fail, ttArchiver.longFileMode );
+
+        mm.verifyAll();
+    }
+
+    @Test
+    public void testCreateTarArchiver_InvalidFormat_ShouldFailWithInvalidCompression()
+        throws NoSuchArchiverException, ArchiverException
+    {
+        final EasyMockSupport mm = new EasyMockSupport();
+
+        final TestTarArchiver ttArchiver = new TestTarArchiver();
+
+        final DefaultAssemblyArchiver subject = createSubject(mm, ttArchiver);
 
         try
         {
@@ -680,83 +504,59 @@
 
     private final class MockAndControlForAssemblyArchiver
     {
-        ArchiverManager archiverManager;
+        final ArchiverManager archiverManager;
 
-        MockControl control;
-
-        MockControl archiverControl;
 
         Archiver archiver;
 
-        MockControl dependencyResolverControl;
+        final DependencyResolver dependencyResolver;
 
-        DependencyResolver dependencyResolver;
+        private final EasyMockSupport mm;
 
-        private final MockManager mm;
-
-        public MockAndControlForAssemblyArchiver( final MockManager mm )
+        public MockAndControlForAssemblyArchiver( final EasyMockSupport mm )
         {
             this.mm = mm;
-            control = MockControl.createControl( ArchiverManager.class );
-            mm.add( control );
+            archiverManager = mm.createControl().createMock(  ArchiverManager.class );
 
-            archiverManager = (ArchiverManager) control.getMock();
+            dependencyResolver = mm.createControl().createMock( DependencyResolver.class );
 
-            dependencyResolverControl = MockControl.createControl( DependencyResolver.class );
-            mm.add( dependencyResolverControl );
-
-            dependencyResolver = (DependencyResolver) dependencyResolverControl.getMock();
         }
 
         void expectGetDestFile( final File file )
         {
-            archiver.getDestFile();
-            archiverControl.setReturnValue( file, MockControl.ZERO_OR_MORE );
+            expect(archiver.getDestFile()).andReturn( file ).anyTimes();
         }
 
-        void createArchiver( final Class<?> archiverClass )
+        void createArchiver( final Class<? extends Archiver> archiverClass )
         {
-            archiverControl = MockControl.createControl( archiverClass );
-            mm.add( archiverControl );
+            archiver = mm.createControl().createMock(archiverClass);
 
-            archiver = (Archiver) archiverControl.getMock();
-
-            archiver.setForced( false );
-            archiverControl.setMatcher( MockControl.ALWAYS_MATCHER );
-            archiverControl.setVoidCallable( MockControl.ZERO_OR_MORE );
+            archiver.setForced( anyBoolean() );
+            expectLastCall().anyTimes();
 
             archiver.setIgnorePermissions( false );
-            archiverControl.setMatcher( MockControl.ALWAYS_MATCHER );
-            archiverControl.setVoidCallable( MockControl.ZERO_OR_MORE );
+            expectLastCall().anyTimes();
         }
 
-        // void expectSetArchiverFilters()
-        // {
-        // ( ( FilterEnabled ) archiver ).setArchiveFilters( null );
-        // archiverControl.setMatcher( MockControl.ALWAYS_MATCHER );
-        // }
-
-        void expectGetArchiver( final String format, final Class<?> archiverClass )
+        void expectGetArchiver( final String format, final Class<? extends Archiver> archiverClass )
         {
             createArchiver( archiverClass );
 
             try
             {
-                archiverManager.getArchiver( format );
+                expect(archiverManager.getArchiver( format )).andReturn( archiver );
             }
             catch ( final NoSuchArchiverException e )
             {
                 Assert.fail( "should never happen" );
             }
 
-            control.setReturnValue( archiver );
         }
 
         void expectGetArchiver( final String format, final Archiver archiver )
             throws NoSuchArchiverException
         {
-            archiverManager.getArchiver( format );
-            control.setReturnValue( archiver );
+            expect(archiverManager.getArchiver( format )).andReturn( archiver );
         }
     }
 
@@ -776,12 +576,6 @@
         }
 
         @Override
-        public TarOptions getOptions()
-        {
-            return super.getOptions();
-        }
-
-        @Override
         public void setCompression( final TarCompressionMethod mode )
         {
             compressionMethod = mode;
@@ -795,12 +589,6 @@
             super.setLongfile( mode );
         }
 
-        @Override
-        public void setOptions( final TarOptions options )
-        {
-            super.setOptions( options );
-        }
-
     }
 
     private static final class TestWarArchiver
@@ -818,12 +606,6 @@
 
     }
 
-    interface TestFinalizerFilteredArchiver
-        extends Archiver, FinalizerEnabled
-    {
-
-    }
-
     public static final class TestArchiverWithConfig
         implements Archiver
     {
@@ -834,11 +616,6 @@
 
         private boolean ignorePermissions;
 
-        public void setSimpleConfig( final String simpleConfig )
-        {
-            this.simpleConfig = simpleConfig;
-        }
-
         public String getSimpleConfig()
         {
             return simpleConfig;
@@ -858,7 +635,6 @@
             throws ArchiverException
         {
         }
-
         public void addArchivedFileSet( final File arg0, final String[] arg1, final String[] arg2 )
             throws ArchiverException
         {
@@ -909,6 +685,18 @@
         {
         }
 
+        public void addSymlink( String s, String s2 )
+            throws ArchiverException
+        {
+
+        }
+
+        public void addSymlink( String s, int i, String s2 )
+            throws ArchiverException
+        {
+
+        }
+
         public void addResources( final PlexusIoResourceCollection arg0 )
             throws ArchiverException
         {
diff --git a/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java b/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java
index 1cbcc18..073a7e9 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java
@@ -19,6 +19,18 @@
  * under the License.
  */
 
+import junit.framework.TestCase;
+import org.apache.maven.archiver.MavenArchiveConfiguration;
+import org.apache.maven.model.Model;
+import org.apache.maven.plugin.assembly.testutils.TestFileManager;
+import org.apache.maven.project.MavenProject;
+import org.codehaus.plexus.archiver.ArchiveFinalizer;
+import org.codehaus.plexus.archiver.Archiver;
+import org.codehaus.plexus.archiver.ArchiverException;
+import org.codehaus.plexus.archiver.jar.JarArchiver;
+import org.codehaus.plexus.util.IOUtil;
+import org.easymock.classextension.EasyMockSupport;
+
 import java.io.BufferedReader;
 import java.io.File;
 import java.io.IOException;
@@ -28,25 +40,11 @@
 import java.net.URL;
 import java.util.Collections;
 
-import junit.framework.TestCase;
-
-import org.apache.maven.archiver.MavenArchiveConfiguration;
-import org.apache.maven.model.Model;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
-import org.apache.maven.plugin.assembly.testutils.TestFileManager;
-import org.apache.maven.project.MavenProject;
-import org.codehaus.plexus.archiver.ArchiveFinalizer;
-import org.codehaus.plexus.archiver.Archiver;
-import org.codehaus.plexus.archiver.ArchiverException;
-import org.codehaus.plexus.archiver.jar.JarArchiver;
-import org.codehaus.plexus.util.IOUtil;
-import org.easymock.MockControl;
-
 public class ManifestCreationFinalizerTest
     extends TestCase
 {
 
-    private TestFileManager fileManager = new TestFileManager( "manifest-finalizer.test.", ".jar" );
+    private final TestFileManager fileManager = new TestFileManager( "manifest-finalizer.test.", ".jar" );
 
     public void tearDown()
         throws IOException
@@ -63,7 +61,7 @@
     public void testShouldDoNothingWhenArchiverIsNotJarArchiver()
         throws ArchiverException
     {
-        MockManager mm = new MockManager();
+        EasyMockSupport mm = new EasyMockSupport();
 
         MockAndControlForArchiver macArchiver = new MockAndControlForArchiver( mm );
 
@@ -158,16 +156,13 @@
 
     private final class MockAndControlForArchiver
     {
-        Archiver archiver;
+        final Archiver archiver;
 
-        MockControl control;
 
-        MockAndControlForArchiver( MockManager mm )
+        MockAndControlForArchiver( EasyMockSupport mm )
         {
-            control = MockControl.createControl( Archiver.class );
-            mm.add( control );
 
-            archiver = (Archiver) control.getMock();
+            archiver = mm.createMock(Archiver.class);
         }
     }
 
diff --git a/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java b/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java
index c2d70d9..a0117bd 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java
@@ -21,7 +21,6 @@
 
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.model.Model;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
 import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
 import org.apache.maven.plugin.assembly.archive.task.testutils.ArtifactMock;
@@ -29,7 +28,7 @@
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
 import org.apache.maven.plugin.assembly.model.Assembly;
 import org.apache.maven.plugin.assembly.model.DependencySet;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.project.MavenProjectBuilder;
 import org.codehaus.plexus.logging.Logger;
@@ -40,12 +39,13 @@
 import java.util.Collections;
 
 import junit.framework.TestCase;
+import org.easymock.classextension.EasyMockSupport;
 
 public class DependencySetAssemblyPhaseTest
     extends TestCase
 {
 
-    private final MockManager mockManager = new MockManager();
+    final EasyMockSupport mm = new EasyMockSupport();
 
     public void testExecute_ShouldAddOneDependencyFromProject()
         throws AssemblyFormattingException, ArchiveCreationException, IOException,
@@ -55,7 +55,7 @@
 
         final MavenProject project = newMavenProject( "group", "project", "0" );
 
-        final ArtifactMock projectArtifactMock = new ArtifactMock( mockManager, "group", "project", "0", "jar", false );
+        final ArtifactMock projectArtifactMock = new ArtifactMock( mm, "group", "project", "0", "jar", false );
 
         project.setArtifact( projectArtifactMock.getArtifact() );
 
@@ -74,9 +74,9 @@
         assembly.addDependencySet( ds );
 
         final MockAndControlForAddDependencySetsTask macTask =
-            new MockAndControlForAddDependencySetsTask( mockManager, project );
+            new MockAndControlForAddDependencySetsTask( mm, project );
 
-        final ArtifactMock artifactMock = new ArtifactMock( mockManager, "group", "dep", "1", "jar", false );
+        final ArtifactMock artifactMock = new ArtifactMock( mm, "group", "dep", "1", "jar", false );
         final File artifactFile = artifactMock.setNewFile();
 
         System.out.println( "On test setup, hashcode for dependency artifact: " + artifactMock.getArtifact()
@@ -99,14 +99,13 @@
 
         macTask.expectBuildFromRepository( depProject );
 
-        mockManager.replayAll();
+        mm.replayAll();
 
-        final DefaultAssemblyContext context = new DefaultAssemblyContext();
-        context.setResolvedArtifacts( Collections.singleton( artifactMock.getArtifact() ) );
+        final ResolvedAssembly assembly1 = ResolvedAssembly.create( assembly ).withDependencySetArtifacts(
+            Collections.singleton( artifactMock.getArtifact() ) );
+        createPhase( macTask, logger ).execute( assembly1, macTask.archiver, macTask.configSource );
 
-        createPhase( macTask, logger ).execute( assembly, macTask.archiver, macTask.configSource, context );
-
-        mockManager.verifyAll();
+        mm.verifyAll();
     }
 
     private MavenProject newMavenProject( final String groupId, final String artifactId, final String version )
@@ -131,13 +130,13 @@
         final Logger logger = new ConsoleLogger( Logger.LEVEL_DEBUG, "test" );
 
         final MockAndControlForAddDependencySetsTask macTask =
-            new MockAndControlForAddDependencySetsTask( mockManager, null );
+            new MockAndControlForAddDependencySetsTask( mm, null );
 
-        mockManager.replayAll();
+        mm.replayAll();
 
-        createPhase( macTask, logger ).execute( assembly, null, macTask.configSource, new DefaultAssemblyContext() );
+        createPhase( macTask, logger ).execute( ResolvedAssembly.create( assembly), null, macTask.configSource );
 
-        mockManager.verifyAll();
+        mm.verifyAll();
     }
 
     private DependencySetAssemblyPhase createPhase( final MockAndControlForAddDependencySetsTask macTask,
diff --git a/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhaseTest.java b/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhaseTest.java
index c47d8d3..f1421ae 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhaseTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileItemAssemblyPhaseTest.java
@@ -19,20 +19,15 @@
  * under the License.
  */
 
-import java.io.File;
-import java.io.IOException;
-
 import junit.framework.Assert;
 import junit.framework.TestCase;
-
 import org.apache.maven.model.Model;
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
 import org.apache.maven.plugin.assembly.model.Assembly;
 import org.apache.maven.plugin.assembly.model.FileItem;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
 import org.apache.maven.plugin.assembly.testutils.TestFileManager;
 import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
 import org.apache.maven.project.MavenProject;
@@ -40,7 +35,12 @@
 import org.codehaus.plexus.archiver.ArchiverException;
 import org.codehaus.plexus.logging.Logger;
 import org.codehaus.plexus.logging.console.ConsoleLogger;
-import org.easymock.MockControl;
+import org.easymock.classextension.EasyMockSupport;
+
+import java.io.File;
+import java.io.IOException;
+
+import static org.easymock.EasyMock.expect;
 
 public class FileItemAssemblyPhaseTest
     extends TestCase
@@ -58,7 +58,7 @@
     public void testExecute_ShouldAddNothingWhenNoFileItemsArePresent()
         throws ArchiveCreationException, AssemblyFormattingException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForConfigSource macCS = new MockAndControlForConfigSource( mm );
 
@@ -73,7 +73,7 @@
 
         mm.replayAll();
 
-        createPhase( macLogger.logger ).execute( assembly, null, macCS.configSource, new DefaultAssemblyContext() );
+        createPhase( macLogger.logger ).execute( ResolvedAssembly.create( assembly ), null, macCS.configSource );
 
         mm.verifyAll();
     }
@@ -81,7 +81,7 @@
     public void testExecute_ShouldAddAbsoluteFileNoFilterNoLineEndingConversion()
         throws ArchiveCreationException, AssemblyFormattingException, IOException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForConfigSource macCS = new MockAndControlForConfigSource( mm );
 
@@ -122,8 +122,7 @@
 
         mm.replayAll();
 
-        createPhase( macLogger.logger ).execute( assembly, macArchiver.archiver, macCS.configSource,
-                                                 new DefaultAssemblyContext() );
+        createPhase( macLogger.logger ).execute( ResolvedAssembly.create( assembly), macArchiver.archiver, macCS.configSource );
 
         mm.verifyAll();
     }
@@ -131,7 +130,7 @@
     public void testExecute_ShouldAddRelativeFileNoFilterNoLineEndingConversion()
         throws ArchiveCreationException, AssemblyFormattingException, IOException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForConfigSource macCS = new MockAndControlForConfigSource( mm );
 
@@ -172,8 +171,7 @@
 
         mm.replayAll();
 
-        createPhase( macLogger.logger ).execute( assembly, macArchiver.archiver, macCS.configSource,
-                                                 new DefaultAssemblyContext() );
+        createPhase( macLogger.logger ).execute( ResolvedAssembly.create( assembly), macArchiver.archiver, macCS.configSource );
 
         mm.verifyAll();
     }
@@ -181,7 +179,7 @@
     public void testExecute_WithOutputDirectory()
         throws Exception
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForConfigSource macCS = new MockAndControlForConfigSource( mm );
 
@@ -250,8 +248,7 @@
 
         mm.replayAll();
 
-        createPhase( macLogger.logger ).execute( assembly, macArchiver.archiver, macCS.configSource,
-                                                 new DefaultAssemblyContext() );
+        createPhase( macLogger.logger ).execute( ResolvedAssembly.create( assembly), macArchiver.archiver, macCS.configSource );
 
         mm.verifyAll();
     }
@@ -259,7 +256,7 @@
     public void testExecute_WithOutputDirectoryAndDestName()
         throws Exception
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForConfigSource macCS = new MockAndControlForConfigSource( mm );
 
@@ -331,8 +328,7 @@
 
         mm.replayAll();
 
-        createPhase( macLogger.logger ).execute( assembly, macArchiver.archiver, macCS.configSource,
-                                                 new DefaultAssemblyContext() );
+        createPhase( macLogger.logger ).execute( ResolvedAssembly.create( assembly), macArchiver.archiver, macCS.configSource );
 
         mm.verifyAll();
     }
@@ -340,7 +336,7 @@
     public void testExecute_WithOutputDirectoryAndDestNameAndIncludeBaseDirectoryFalse()
         throws Exception
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForConfigSource macCS = new MockAndControlForConfigSource( mm );
 
@@ -410,8 +406,7 @@
 
         mm.replayAll();
 
-        createPhase( macLogger.logger ).execute( assembly, macArchiver.archiver, macCS.configSource,
-                                                 new DefaultAssemblyContext() );
+        createPhase( macLogger.logger ).execute( ResolvedAssembly.create( assembly), macArchiver.archiver, macCS.configSource );
 
         mm.verifyAll();
     }
@@ -426,16 +421,11 @@
 
     private final class MockAndControlForArchiver
     {
-        Archiver archiver;
+        final Archiver archiver;
 
-        MockControl control;
-
-        public MockAndControlForArchiver( final MockManager mockManager )
+        public MockAndControlForArchiver( final EasyMockSupport mockManager )
         {
-            control = MockControl.createControl( Archiver.class );
-            mockManager.add( control );
-
-            archiver = (Archiver) control.getMock();
+            archiver = mockManager.createMock(Archiver.class);
         }
 
         public void expectAddFile( final File file, final String outputLocation, final int fileMode )
@@ -453,64 +443,50 @@
 
     private final class MockAndControlForConfigSource
     {
-        AssemblerConfigurationSource configSource;
+        final AssemblerConfigurationSource configSource;
 
-        MockControl control;
-
-        public MockAndControlForConfigSource( final MockManager mockManager )
+        public MockAndControlForConfigSource( final EasyMockSupport mockManager )
         {
-            control = MockControl.createControl( AssemblerConfigurationSource.class );
-            mockManager.add( control );
 
-            configSource = (AssemblerConfigurationSource) control.getMock();
+            configSource = mockManager.createMock(AssemblerConfigurationSource.class);
 
-            configSource.getMavenSession();
-            control.setReturnValue( null, MockControl.ZERO_OR_MORE );
+            expect(configSource.getMavenSession()).andReturn( null ).anyTimes();
         }
 
         public void expectGetProject( final MavenProject project )
         {
-            configSource.getProject();
-            control.setReturnValue( project, MockControl.ONE_OR_MORE );
+            expect(configSource.getProject()).andReturn( project ).atLeastOnce();
         }
 
         public void expectGetFinalName( final String finalName )
         {
-            configSource.getFinalName();
-            control.setReturnValue( finalName, MockControl.ONE_OR_MORE );
+            expect( configSource.getFinalName()).andReturn( finalName ).atLeastOnce();
         }
 
         public void expectGetTemporaryRootDirectory( final File tempRoot )
         {
-            configSource.getTemporaryRootDirectory();
-            control.setReturnValue( tempRoot, MockControl.ONE_OR_MORE );
+            expect( configSource.getTemporaryRootDirectory()).andReturn( tempRoot ).atLeastOnce();
         }
 
         public void expectGetBasedir( final File basedir )
         {
-            configSource.getBasedir();
-            control.setReturnValue( basedir, MockControl.ONE_OR_MORE );
+            expect( configSource.getBasedir()).andReturn( basedir ).atLeastOnce();
         }
 
         public void expectGetEncoding( )
         {
-            configSource.getEncoding();
-            control.setReturnValue( "UTF-8", MockControl.ONE_OR_MORE );
+            expect( configSource.getEncoding()).andReturn( "UTF-8").atLeastOnce();
         }
 }
 
     private final class MockAndControlForLogger
     {
-        Logger logger;
+        final Logger logger;
 
-        MockControl control;
-
-        public MockAndControlForLogger( final MockManager mockManager )
+        public MockAndControlForLogger( final EasyMockSupport mockManager )
         {
-            control = MockControl.createControl( Logger.class );
-            mockManager.add( control );
 
-            logger = (Logger) control.getMock();
+            logger = mockManager.createMock (Logger.class);
         }
     }
 
diff --git a/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhaseTest.java b/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhaseTest.java
index ee0ac7c..c12c27d 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhaseTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/archive/phase/FileSetAssemblyPhaseTest.java
@@ -25,23 +25,26 @@
 import junit.framework.TestCase;
 
 import org.apache.maven.model.Model;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
 import org.apache.maven.plugin.assembly.archive.task.testutils.MockAndControlForAddFileSetsTask;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
 import org.apache.maven.plugin.assembly.model.Assembly;
 import org.apache.maven.plugin.assembly.model.FileSet;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
 import org.apache.maven.plugin.assembly.testutils.TestFileManager;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.logging.Logger;
-import org.easymock.MockControl;
+import org.easymock.EasyMock;
+import org.easymock.classextension.EasyMockSupport;
+
+import static org.easymock.EasyMock.anyObject;
+import static org.easymock.EasyMock.expect;
 
 public class FileSetAssemblyPhaseTest
     extends TestCase
 {
 
-    private final MockManager mockManager = new MockManager();
+    final EasyMockSupport mm = new EasyMockSupport();
 
     private final TestFileManager fileManager = new TestFileManager( "file-set-assembly.test.", "" );
 
@@ -61,14 +64,13 @@
 
         final MockAndControlForLogger macLogger = new MockAndControlForLogger();
         final MockAndControlForAddFileSetsTask macTask =
-            new MockAndControlForAddFileSetsTask( mockManager, fileManager );
+            new MockAndControlForAddFileSetsTask( mm, fileManager );
 
-        mockManager.replayAll();
+        mm.replayAll();
 
-        createPhase( macLogger ).execute( assembly, macTask.archiver, macTask.configSource,
-                                          new DefaultAssemblyContext() );
+        createPhase( macLogger ).execute( ResolvedAssembly.create( assembly ), macTask.archiver, macTask.configSource );
 
-        mockManager.verifyAll();
+        mm.verifyAll();
     }
 
     public void testShouldAddOneFileSet()
@@ -89,7 +91,7 @@
 
         final MockAndControlForLogger macLogger = new MockAndControlForLogger();
         final MockAndControlForAddFileSetsTask macTask =
-            new MockAndControlForAddFileSetsTask( mockManager, fileManager );
+            new MockAndControlForAddFileSetsTask( mm, fileManager );
 
         macTask.expectGetArchiveBaseDirectory();
 
@@ -104,14 +106,13 @@
 
         final int[] modes = { -1, -1, dirMode, fileMode };
 
-        macTask.expectAdditionOfSingleFileSet( project, basedir, "final-name", false, modes, 1, true );
+        macTask.expectAdditionOfSingleFileSet( project, "final-name", false, modes, 1, true );
 
-        mockManager.replayAll();
+        mm.replayAll();
 
-        createPhase( macLogger ).execute( assembly, macTask.archiver, macTask.configSource,
-                                          new DefaultAssemblyContext() );
+        createPhase( macLogger ).execute( ResolvedAssembly.create( assembly), macTask.archiver, macTask.configSource );
 
-        mockManager.verifyAll();
+        mm.verifyAll();
     }
 
     private FileSetAssemblyPhase createPhase( final MockAndControlForLogger macLogger )
@@ -125,29 +126,22 @@
 
     private final class MockAndControlForLogger
     {
-        Logger logger;
-
-        MockControl control;
+        final Logger logger;
 
         MockAndControlForLogger()
         {
-            control = MockControl.createControl( Logger.class );
-            mockManager.add( control );
-
-            logger = (Logger) control.getMock();
+            logger = mm.createMock(Logger.class);
         }
 
         public void expectDebug( final boolean debugCheck, final boolean debugEnabled )
         {
             if ( debugCheck )
             {
-                logger.isDebugEnabled();
-                control.setReturnValue( debugEnabled, MockControl.ONE_OR_MORE );
+                expect( logger.isDebugEnabled()).andReturn( debugEnabled ).anyTimes();
             }
 
-            logger.debug( null );
-            control.setMatcher( MockControl.ALWAYS_MATCHER );
-            control.setVoidCallable( MockControl.ONE_OR_MORE );
+            logger.debug( (String) anyObject() );
+            EasyMock.expectLastCall().anyTimes();
         }
     }
 
diff --git a/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java b/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java
index b6e4865..00e3a94 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java
@@ -19,8 +19,8 @@
  * under the License.
  */
 
+import org.apache.maven.artifact.Artifact;
 import org.apache.maven.model.Model;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
 import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
 import org.apache.maven.plugin.assembly.archive.task.testutils.ArtifactMock;
@@ -34,7 +34,8 @@
 import org.apache.maven.plugin.assembly.model.ModuleBinaries;
 import org.apache.maven.plugin.assembly.model.ModuleSet;
 import org.apache.maven.plugin.assembly.model.ModuleSources;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
+import org.apache.maven.plugin.assembly.resolved.ResolvedModuleSet;
 import org.apache.maven.plugin.assembly.testutils.TestFileManager;
 import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
 import org.apache.maven.project.MavenProject;
@@ -53,6 +54,11 @@
 
 import junit.framework.Assert;
 import junit.framework.TestCase;
+import org.easymock.classextension.EasyMockSupport;
+
+import static java.util.Collections.singleton;
+import static org.apache.maven.plugin.assembly.resolved.ResolvedModuleSet.createResolvedModuleSet;
+
 
 public class ModuleSetAssemblyPhaseTest
     extends TestCase
@@ -122,7 +128,7 @@
     public void testCreateFileSet_ShouldUseModuleDirOnlyWhenOutDirIsNull()
         throws AssemblyFormattingException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final Model model = new Model();
         model.setArtifactId( "artifact" );
@@ -163,7 +169,7 @@
     public void testCreateFileSet_ShouldPrependModuleDirWhenOutDirIsProvided()
         throws AssemblyFormattingException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final Model model = new Model();
         model.setArtifactId( "artifact" );
@@ -205,7 +211,7 @@
     public void testCreateFileSet_ShouldAddExcludesForSubModulesWhenExcludeSubModDirsIsTrue()
         throws AssemblyFormattingException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm, null );
 
@@ -251,14 +257,14 @@
         final Assembly assembly = new Assembly();
         assembly.setIncludeBaseDirectory( false );
 
-        createPhase( null, null ).execute( assembly, null, null, new DefaultAssemblyContext() );
+        createPhase( null, null ).execute( ResolvedAssembly.create( assembly), null, null );
     }
 
     public void testExecute_ShouldAddOneModuleSetWithOneModuleInIt()
         throws ArchiveCreationException, AssemblyFormattingException, IOException,
         InvalidAssemblerConfigurationException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MavenProject project = createProject( "group", "artifact", "version", null );
 
@@ -303,8 +309,11 @@
 
         mm.replayAll();
 
-        createPhase( logger, null ).execute( assembly, macTask.archiver, macTask.configSource,
-                                             new DefaultAssemblyContext() );
+        final ResolvedAssembly ra = ResolvedAssembly.create( assembly ).withDependencySetArtifacts(
+            new HashSet<Artifact>(  ) ).withResolvedModuleSets( Collections.singleton( createResolvedModuleSet( ms ) ) );
+
+        final ModuleSetAssemblyPhase phase = createPhase( logger, null );
+        phase.execute( ra, macTask.archiver, macTask.configSource );
 
         mm.verifyAll();
     }
@@ -312,14 +321,14 @@
     public void testAddModuleBinaries_ShouldReturnImmediatelyWhenBinariesIsNull()
         throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
     {
-        createPhase( null, null ).addModuleBinaries( null, null, null, null, new DefaultAssemblyContext() );
+        createPhase( null, null ).addModuleBinaries( null, null, null, null, null );
     }
 
     public void testAddModuleBinaries_ShouldFilterPomModule()
         throws ArchiveCreationException, AssemblyFormattingException, IOException,
         InvalidAssemblerConfigurationException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm );
 
@@ -336,15 +345,14 @@
         final ArtifactMock artifactMock = new ArtifactMock( mm, "group", "artifact", "version", "pom", false );
         project.setArtifact( artifactMock.getArtifact() );
 
-        final Set<MavenProject> projects = Collections.singleton( project );
+        final Set<MavenProject> projects = singleton( project );
 
         mm.replayAll();
 
-        createPhase( new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ), null ).addModuleBinaries( binaries,
+        createPhase( new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ), null ).addModuleBinaries( null, binaries,
                                                                                                 projects,
                                                                                                 macTask.archiver,
-                                                                                                macTask.configSource,
-                                                                                                new DefaultAssemblyContext() );
+                                                                                                macTask.configSource );
 
         mm.verifyAll();
     }
@@ -353,7 +361,7 @@
         throws ArchiveCreationException, AssemblyFormattingException, IOException,
         InvalidAssemblerConfigurationException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm, null );
 
@@ -377,14 +385,15 @@
         final MavenProject project = createProject( "group", "artifact", "version", null );
         project.addAttachedArtifact( artifactMock.getArtifact() );
 
-        final Set<MavenProject> projects = Collections.singleton( project );
+        final Set<MavenProject> projects = singleton( project );
 
         mm.replayAll();
 
         final Logger logger = new ConsoleLogger( Logger.LEVEL_DEBUG, "test" );
 
-        createPhase( logger, null ).addModuleBinaries( binaries, projects, macTask.archiver, macTask.configSource,
-                                                       new DefaultAssemblyContext() );
+        ResolvedModuleSet rms = ResolvedModuleSet.empty().withArtifacts( Collections.<Artifact>emptySet() );
+
+        createPhase( logger, null ).addModuleBinaries( rms, binaries, projects, macTask.archiver, macTask.configSource );
 
         mm.verifyAll();
     }
@@ -392,7 +401,7 @@
     public void testAddModuleBinaries_ShouldFailWhenOneModuleDoesntHaveAttachmentWithMatchingClassifier()
         throws ArchiveCreationException, AssemblyFormattingException, IOException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm );
 
@@ -410,7 +419,7 @@
         final MavenProject project = createProject( "group", "artifact", "version", null );
         project.setArtifact( artifactMock.getArtifact() );
 
-        final Set<MavenProject> projects = Collections.singleton( project );
+        final Set<MavenProject> projects = singleton( project );
 
         mm.replayAll();
 
@@ -418,8 +427,7 @@
 
         try
         {
-            createPhase( logger, null ).addModuleBinaries( binaries, projects, macTask.archiver, macTask.configSource,
-                                                           new DefaultAssemblyContext() );
+            createPhase( logger, null ).addModuleBinaries( null, binaries, projects, macTask.archiver, macTask.configSource );
 
             fail( "Should throw an invalid configuration exception because of module with missing attachment." );
         }
@@ -435,7 +443,7 @@
         throws ArchiveCreationException, AssemblyFormattingException, IOException,
         InvalidAssemblerConfigurationException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm );
 
@@ -458,14 +466,15 @@
         final MavenProject project = createProject( "group", "artifact", "version", null );
         project.setArtifact( artifactMock.getArtifact() );
 
-        final Set<MavenProject> projects = Collections.singleton( project );
+        final Set<MavenProject> projects = singleton( project );
 
         mm.replayAll();
 
         final Logger logger = new ConsoleLogger( Logger.LEVEL_DEBUG, "test" );
 
-        createPhase( logger, null ).addModuleBinaries( binaries, projects, macTask.archiver, macTask.configSource,
-                                                       new DefaultAssemblyContext() );
+        ResolvedModuleSet ms = ResolvedModuleSet.empty().withArtifacts( Collections.<Artifact>emptySet() );
+
+        createPhase( logger, null ).addModuleBinaries( ms, binaries, projects, macTask.archiver, macTask.configSource );
 
         mm.verifyAll();
     }
@@ -474,7 +483,7 @@
         throws ArchiveCreationException, AssemblyFormattingException, IOException,
         InvalidAssemblerConfigurationException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mm );
 
@@ -518,7 +527,7 @@
 
         macTask.expectCSGetRepositories( null, null );
 
-        final Set<MavenProject> projects = Collections.singleton( project );
+        final Set<MavenProject> projects = singleton( project );
 
         mm.replayAll();
 
@@ -526,10 +535,11 @@
 
         final ModuleSetAssemblyPhase phase = createPhase( overrideLogger, macTask );
 
-        final DefaultAssemblyContext context = new DefaultAssemblyContext();
-        context.setResolvedArtifacts( Collections.singleton( depArtifactMock.getArtifact() ) );
+        final ResolvedModuleSet rms = ResolvedModuleSet.empty( ).withArtifacts(
+            Collections.singleton( depArtifactMock.getArtifact() ) );
 
-        phase.addModuleBinaries( binaries, projects, macTask.archiver, macTask.configSource, context );
+
+        phase.addModuleBinaries( rms, binaries, projects, macTask.archiver, macTask.configSource );
 
         mm.verifyAll();
     }
@@ -538,7 +548,7 @@
         throws ArchiveCreationException, AssemblyFormattingException, IOException,
         InvalidAssemblerConfigurationException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mm );
 
@@ -576,7 +586,7 @@
 
         macTask.expectCSGetRepositories( null, null );
 
-        final Set<MavenProject> projects = Collections.singleton( project );
+        final Set<MavenProject> projects = singleton( project );
 
         mm.replayAll();
 
@@ -584,10 +594,9 @@
 
         final ModuleSetAssemblyPhase phase = createPhase( overrideLogger, macTask );
 
-        final DefaultAssemblyContext context = new DefaultAssemblyContext();
-        context.setResolvedArtifacts( Collections.singleton( depArtifactMock.getArtifact() ) );
+        ResolvedModuleSet ms = ResolvedModuleSet.empty().withArtifacts( singleton( depArtifactMock.getArtifact() ) );
 
-        phase.addModuleBinaries( binaries, projects, macTask.archiver, macTask.configSource, context );
+        phase.addModuleBinaries( ms, binaries, projects, macTask.archiver, macTask.configSource );
 
         mm.verifyAll();
     }
@@ -636,7 +645,7 @@
     public void testAddModuleArtifact_ShouldThrowExceptionWhenArtifactFileIsNull()
         throws AssemblyFormattingException, IOException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final ArtifactMock artifactMock = new ArtifactMock( mm, "group", "artifact", "version", "type", false );
         artifactMock.setNullFile();
@@ -662,7 +671,7 @@
     public void testAddModuleArtifact_ShouldAddOneArtifact()
         throws AssemblyFormattingException, IOException, ArchiveCreationException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mm );
 
@@ -698,7 +707,7 @@
     public void testAddModuleSourceFileSets_ShouldReturnImmediatelyIfSourcesIsNull()
         throws ArchiveCreationException, AssemblyFormattingException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         mm.replayAll();
 
@@ -711,7 +720,7 @@
     public void testAddModuleSourceFileSets_ShouldAddOneSourceDirectory()
         throws ArchiveCreationException, AssemblyFormattingException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForAddFileSetsTask macTask = new MockAndControlForAddFileSetsTask( mm, fileManager );
 
@@ -723,7 +732,7 @@
 
         project.setArtifact( artifactMock.getArtifact() );
 
-        final Set<MavenProject> projects = Collections.singleton( project );
+        final Set<MavenProject> projects = singleton( project );
 
         final ModuleSources sources = new ModuleSources();
 
@@ -739,7 +748,7 @@
         final int mode = TypeConversionUtils.modeToInt( "777", new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) );
         final int[] modes = { -1, -1, mode, mode };
 
-        macTask.expectAdditionOfSingleFileSet( project, project.getBasedir(), "final-name", false, modes, 1, true,
+        macTask.expectAdditionOfSingleFileSet( project, "final-name", false, modes, 1, true,
                                                false );
 
         mm.replayAll();
@@ -754,7 +763,7 @@
     public void testGetModuleProjects_ShouldReturnNothingWhenReactorContainsOnlyCurrentProject()
         throws ArchiveCreationException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MavenProject project = createProject( "group", "artifact", "version", null );
 
@@ -780,7 +789,7 @@
     public void testGetModuleProjects_ShouldReturnNothingWhenReactorContainsTwoSiblingProjects()
         throws ArchiveCreationException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MavenProject project = createProject( "group", "artifact", "version", null );
 
@@ -810,7 +819,7 @@
     public void testGetModuleProjects_ShouldReturnModuleOfCurrentProject()
         throws ArchiveCreationException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MavenProject project = createProject( "group", "artifact", "version", null );
 
@@ -845,7 +854,7 @@
     public void testGetModuleProjects_ShouldReturnDescendentModulesOfCurrentProject()
         throws ArchiveCreationException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MavenProject project = createProject( "group", "artifact", "version", null );
 
@@ -883,7 +892,7 @@
     public void testGetModuleProjects_ShouldExcludeModuleAndDescendentsTransitively()
         throws ArchiveCreationException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MavenProject project = createProject( "group", "artifact", "version", null );
 
@@ -891,12 +900,12 @@
 
         final List<ArtifactMock> macArtifacts = new ArrayList<ArtifactMock>();
 
-        macArtifacts.add( addArtifact( project, mm, false, false ) );
+        macArtifacts.add( addArtifact( project, mm, false ) );
 
         final MavenProject project2 = createProject( "group", "artifact2", "version", project );
-        macArtifacts.add( addArtifact( project2, mm, true, false ) );
+        macArtifacts.add( addArtifact( project2, mm, false ) );
         final MavenProject project3 = createProject( "group", "artifact3", "version", project2 );
-        macArtifacts.add( addArtifact( project3, mm, true, true ) );
+        macArtifacts.add( addArtifact( project3, mm, true ) );
 
         final List<MavenProject> projects = new ArrayList<MavenProject>();
         projects.add( project );
@@ -920,8 +929,7 @@
         mm.verifyAll();
     }
 
-    private ArtifactMock addArtifact( final MavenProject project, final MockManager mm,
-                                      final boolean expectIdentityChecks, final boolean expectDepTrailCheck )
+    private ArtifactMock addArtifact( final MavenProject project, final EasyMockSupport mm, final boolean expectDepTrailCheck )
     {
         final ArtifactMock macArtifact =
             new ArtifactMock( mm, project.getGroupId(), project.getArtifactId(), project.getVersion(),
@@ -1026,9 +1034,7 @@
             projectBuilder = macTask.projectBuilder;
         }
 
-        final ModuleSetAssemblyPhase phase = new ModuleSetAssemblyPhase( projectBuilder, logger );
-
-        return phase;
+        return new ModuleSetAssemblyPhase( projectBuilder, logger );
     }
 
 }
diff --git a/src/test/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhaseTest.java b/src/test/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhaseTest.java
index 026e0fd..2bb0694 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhaseTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/archive/phase/RepositoryAssemblyPhaseTest.java
@@ -21,36 +21,36 @@
 
 import java.io.File;
 import java.io.IOException;
-import java.util.Arrays;
 
 import junit.framework.Assert;
 import junit.framework.TestCase;
 
 import org.apache.maven.model.Model;
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.DefaultAssemblyContext;
 import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
-import org.apache.maven.plugin.assembly.archive.phase.wrappers.RepoBuilderConfigSourceWrapper;
-import org.apache.maven.plugin.assembly.archive.phase.wrappers.RepoInfoWrapper;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
 import org.apache.maven.plugin.assembly.model.Assembly;
 import org.apache.maven.plugin.assembly.model.Repository;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
+import org.apache.maven.plugin.assembly.resolved.ResolvedAssembly;
 import org.apache.maven.plugin.assembly.testutils.TestFileManager;
 import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.shared.repository.RepositoryAssembler;
 import org.apache.maven.shared.repository.RepositoryAssemblyException;
+import org.apache.maven.shared.repository.RepositoryBuilderConfigSource;
+import org.apache.maven.shared.repository.model.RepositoryInfo;
 import org.codehaus.plexus.archiver.Archiver;
 import org.codehaus.plexus.archiver.ArchiverException;
 import org.codehaus.plexus.archiver.FileSet;
 import org.codehaus.plexus.archiver.util.DefaultFileSet;
 import org.codehaus.plexus.logging.Logger;
 import org.codehaus.plexus.logging.console.ConsoleLogger;
-import org.codehaus.plexus.util.StringUtils;
-import org.easymock.AbstractMatcher;
-import org.easymock.MockControl;
+import org.easymock.classextension.EasyMock;
+import org.easymock.classextension.EasyMockSupport;
+
+import static org.easymock.EasyMock.anyObject;
+import static org.easymock.EasyMock.expect;
 
 public class RepositoryAssemblyPhaseTest
     extends TestCase
@@ -68,7 +68,7 @@
     public void testExecute_ShouldNotIncludeRepositoryIfNonSpecifiedInAssembly()
         throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForRepositoryAssembler macRepo = new MockAndControlForRepositoryAssembler( mm );
         final MockAndControlForArchiver macArchiver = new MockAndControlForArchiver( mm );
@@ -84,10 +84,10 @@
 
         mm.replayAll();
 
-        createPhase( macRepo.repositoryAssembler, new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ).execute( assembly,
+        createPhase( macRepo.repositoryAssembler, new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ).execute( ResolvedAssembly.create(
+                                                                                                                 assembly ),
                                                                                                              macArchiver.archiver,
-                                                                                                             macCS.configSource,
-                                                                                                             new DefaultAssemblyContext() );
+                                                                                                             macCS.configSource );
 
         mm.verifyAll();
     }
@@ -95,7 +95,7 @@
     public void testExecute_ShouldIncludeOneRepository()
         throws ArchiveCreationException, AssemblyFormattingException, InvalidAssemblerConfigurationException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
         final MockAndControlForRepositoryAssembler macRepo = new MockAndControlForRepositoryAssembler( mm );
         final MockAndControlForArchiver macArchiver = new MockAndControlForArchiver( mm );
@@ -124,16 +124,15 @@
         macArchiver.expectModeChange( -1, -1, mode, mode, true );
         macArchiver.expectAddDirectory( outDir, "out/", null, null );
 
-        macRepo.expectAssemble( outDir, repo, macCS.configSource );
+        macRepo.expectAssemble();
 
         assembly.addRepository( repo );
 
         mm.replayAll();
 
-        createPhase( macRepo.repositoryAssembler, new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ).execute( assembly,
+        createPhase( macRepo.repositoryAssembler, new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) ).execute( ResolvedAssembly.create( assembly),
                                                                                                              macArchiver.archiver,
-                                                                                                             macCS.configSource,
-                                                                                                             new DefaultAssemblyContext() );
+                                                                                                             macCS.configSource );
 
         mm.verifyAll();
     }
@@ -148,16 +147,12 @@
 
     private final class MockAndControlForArchiver
     {
-        Archiver archiver;
+        final Archiver archiver;
 
-        MockControl control;
-
-        public MockAndControlForArchiver( final MockManager mockManager )
+        public MockAndControlForArchiver( final EasyMockSupport mockManager )
         {
-            control = MockControl.createControl( Archiver.class );
-            mockManager.add( control );
 
-            archiver = (Archiver) control.getMock();
+            archiver = mockManager.createMock (Archiver.class);
         }
 
         public void expectAddDirectory( final File outDir, final String location, final String[] includes,
@@ -171,124 +166,22 @@
                 fs.setIncludes( includes );
                 fs.setExcludes( excludes );
 
-                archiver.addFileSet( fs );
+                archiver.addFileSet( (FileSet)anyObject() );
             }
             catch ( final ArchiverException e )
             {
                 Assert.fail( "Should never happen." );
             }
 
-            control.setMatcher( new AbstractMatcher()
-            {
-
-                @Override
-                protected boolean argumentMatches( final Object expected, final Object actual )
-                {
-                    final FileSet e = (FileSet) expected;
-                    final FileSet a = (FileSet) actual;
-
-                    if ( !eq( e.getDirectory(), a.getDirectory() ) )
-                    {
-                        System.out.println( "FileSet directory expected: " + e.getDirectory() + "\nActual: "
-                                        + a.getDirectory() );
-
-                        return false;
-                    }
-
-                    if ( !eq( e.getPrefix(), a.getPrefix() ) )
-                    {
-                        System.out.println( "FileSet prefix expected: " + e.getPrefix() + "\nActual: " + a.getPrefix() );
-
-                        return false;
-                    }
-
-                    if ( !areq( e.getIncludes(), a.getIncludes() ) )
-                    {
-                        System.out.println( "FileSet includes expected: " + arToStr( e.getIncludes() ) + "\nActual: "
-                                        + arToStr( a.getIncludes() ) );
-
-                        return false;
-                    }
-
-                    if ( !areq( e.getExcludes(), a.getExcludes() ) )
-                    {
-                        System.out.println( "FileSet excludes expected: " + arToStr( e.getExcludes() ) + "\nActual: "
-                                        + arToStr( a.getExcludes() ) );
-
-                        return false;
-                    }
-
-                    return true;
-                }
-
-                @Override
-                protected String argumentToString( final Object argument )
-                {
-                    final FileSet a = (FileSet) argument;
-
-                    return argument == null ? "Null FileSet" : "FileSet:[dir=" + a.getDirectory() + ", prefix: "
-                                    + a.getPrefix() + "\nincludes:\n" + arToStr( a.getIncludes() ) + "\nexcludes:\n"
-                                    + arToStr( a.getExcludes() ) + "]";
-                }
-
-                private String arToStr( final String[] array )
-                {
-                    return array == null ? "-EMPTY-" : StringUtils.join( array, "\n\t" );
-                }
-
-                private boolean areq( final String[] first, final String[] second )
-                {
-                    if ( ( first == null || first.length == 0 ) && ( second == null || second.length == 0 ) )
-                    {
-                        return true;
-                    }
-                    else if ( first == null && second != null )
-                    {
-                        return false;
-                    }
-                    else if ( first != null && second == null )
-                    {
-                        return false;
-                    }
-                    else
-                    {
-                        return Arrays.equals( first, second );
-                    }
-                }
-
-                private boolean eq( final Object first, final Object second )
-                {
-                    if ( first == null && second == null )
-                    {
-                        return true;
-                    }
-                    else if ( first == null && second != null )
-                    {
-                        return false;
-                    }
-                    else if ( first != null && second == null )
-                    {
-                        return false;
-                    }
-                    else
-                    {
-                        return first.equals( second );
-                    }
-                }
-
-            } );
-
-            control.setVoidCallable( MockControl.ONE_OR_MORE );
+            EasyMock.expectLastCall().atLeastOnce();
         }
 
         void expectModeChange( final int defaultDirMode, final int defaultFileMode, final int dirMode,
                                final int fileMode, final boolean expectTwoSets )
         {
-            archiver.getOverrideDirectoryMode();
-            control.setReturnValue( defaultDirMode );
+            expect( archiver.getOverrideDirectoryMode()).andReturn( defaultDirMode );
 
-            archiver.getOverrideFileMode();
-            control.setReturnValue( defaultFileMode );
+            expect( archiver.getOverrideFileMode()).andReturn( defaultFileMode );
 
             if ( expectTwoSets )
             {
@@ -315,37 +208,28 @@
 
     private final class MockAndControlForConfigSource
     {
-        AssemblerConfigurationSource configSource;
+        final AssemblerConfigurationSource configSource;
 
-        MockControl control;
-
-        public MockAndControlForConfigSource( final MockManager mockManager )
+        public MockAndControlForConfigSource( final EasyMockSupport mockManager )
         {
-            control = MockControl.createControl( AssemblerConfigurationSource.class );
-            mockManager.add( control );
+            configSource = mockManager.createMock(AssemblerConfigurationSource.class);
 
-            configSource = (AssemblerConfigurationSource) control.getMock();
-
-            configSource.getMavenSession();
-            control.setReturnValue( null, MockControl.ZERO_OR_MORE );
+            expect( configSource.getMavenSession()).andReturn( null ).anyTimes();
         }
 
         public void expectGetProject( final MavenProject project )
         {
-            configSource.getProject();
-            control.setReturnValue( project, MockControl.ONE_OR_MORE );
+            expect(configSource.getProject()).andReturn( project ).atLeastOnce();
         }
 
         public void expectGetFinalName( final String finalName )
         {
-            configSource.getFinalName();
-            control.setReturnValue( finalName, MockControl.ONE_OR_MORE );
+            expect(configSource.getFinalName()).andReturn( finalName ).atLeastOnce();
         }
 
         public void expectGetTemporaryRootDirectory( final File tempRoot )
         {
-            configSource.getTemporaryRootDirectory();
-            control.setReturnValue( tempRoot, MockControl.ONE_OR_MORE );
+            expect(configSource.getTemporaryRootDirectory()).andReturn( tempRoot ).atLeastOnce();
         }
 
         //
@@ -358,33 +242,27 @@
 
     private final class MockAndControlForRepositoryAssembler
     {
-        RepositoryAssembler repositoryAssembler;
+        final RepositoryAssembler repositoryAssembler;
 
-        MockControl control;
-
-        MockAndControlForRepositoryAssembler( final MockManager mockManager )
+        MockAndControlForRepositoryAssembler( final EasyMockSupport mockManager )
         {
-            control = MockControl.createControl( RepositoryAssembler.class );
-            mockManager.add( control );
-
-            repositoryAssembler = (RepositoryAssembler) control.getMock();
+            repositoryAssembler = mockManager.createMock(RepositoryAssembler.class);
         }
 
-        public void expectAssemble( final File dir, final Repository repo,
-                                    final AssemblerConfigurationSource configSource )
+        public void expectAssemble()
         {
             try
             {
-                repositoryAssembler.buildRemoteRepository( dir, new RepoInfoWrapper( repo ),
-                                                           new RepoBuilderConfigSourceWrapper( configSource ) );
-                control.setMatcher( MockControl.ALWAYS_MATCHER );
+                repositoryAssembler.buildRemoteRepository( (File)anyObject(),
+                                                           (RepositoryInfo) anyObject(),
+                                                           ( RepositoryBuilderConfigSource)anyObject() );
+                EasyMock.expectLastCall().atLeastOnce();
             }
             catch ( final RepositoryAssemblyException e )
             {
                 Assert.fail( "Should never happen" );
             }
 
-            control.setVoidCallable( MockControl.ONE_OR_MORE );
         }
     }
 
diff --git a/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTaskTest.java b/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTaskTest.java
index 2cff55f..b54c572 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTaskTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddArtifactTaskTest.java
@@ -26,7 +26,6 @@
 import org.apache.maven.plugin.assembly.archive.task.testutils.MockAndControlForAddArtifactTask;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
 import org.apache.maven.plugin.assembly.model.DependencySet;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
 import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.archiver.ArchiverException;
@@ -38,28 +37,27 @@
 import java.util.Arrays;
 
 import junit.framework.TestCase;
+import org.easymock.classextension.EasyMockSupport;
 
 public class AddArtifactTaskTest
     extends TestCase
 {
 
-    private MockManager mockManager;
+    private EasyMockSupport mockManager;
 
     private MockAndControlForAddArtifactTask mac;
 
-    private MavenProject mainProject;
-
     public void setUp()
         throws IOException
     {
-        mockManager = new MockManager();
+        mockManager = new EasyMockSupport();
 
         Model model = new Model();
         model.setGroupId( "group" );
         model.setArtifactId( "main" );
         model.setVersion( "1000" );
 
-        mainProject = new MavenProject( model );
+        MavenProject mainProject = new MavenProject( model );
 
         mac = new MockAndControlForAddArtifactTask( mockManager, mainProject );
         mac.expectGetFinalName( "final-name" );
@@ -211,7 +209,7 @@
         File artifactFile = artifactMock.setNewFile();
 
         mac.expectGetDestFile( new File( "junk" ) );
-        mac.expectAddArchivedFileSet( artifactFile, outputLocation, includes, excludes );
+        mac.expectAddArchivedFileSet();
 
         mockManager.replayAll();
 
diff --git a/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTaskTest.java b/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTaskTest.java
index 069617a..4670fdf 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTaskTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTaskTest.java
@@ -27,7 +27,6 @@
 import org.apache.maven.plugin.assembly.archive.task.testutils.MockAndControlForAddDependencySetsTask;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
 import org.apache.maven.plugin.assembly.model.DependencySet;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.project.ProjectBuildingException;
 import org.codehaus.plexus.logging.Logger;
@@ -40,12 +39,13 @@
 import java.util.Set;
 
 import junit.framework.TestCase;
+import org.easymock.classextension.EasyMockSupport;
 
 public class AddDependencySetsTaskTest
     extends TestCase
 {
 
-    private final MockManager mockManager = new MockManager();
+    private final EasyMockSupport mockManager = new EasyMockSupport();
 
     public void testAddDependencySet_ShouldInterpolateDefaultOutputFileNameMapping()
         throws AssemblyFormattingException, ArchiveCreationException, InvalidAssemblerConfigurationException,
@@ -226,8 +226,7 @@
 
         if ( unpack )
         {
-            macTask.expectAddArchivedFileSet( artifactFile, outputLocation + "/",
-                                              AddArtifactTask.DEFAULT_INCLUDES_ARRAY, null );
+            macTask.expectAddArchivedFileSet();
             macTask.expectModeChange( -1, -1, 10, 10, 2 );
         }
         else
diff --git a/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTaskTest.java b/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTaskTest.java
index 1088df0..6ffa1d7 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTaskTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddDirectoryTaskTest.java
@@ -26,34 +26,34 @@
 import junit.framework.TestCase;
 
 import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
 import org.apache.maven.plugin.assembly.testutils.TestFileManager;
 import org.codehaus.plexus.archiver.Archiver;
 import org.codehaus.plexus.archiver.ArchiverException;
-import org.easymock.MockControl;
+import org.codehaus.plexus.archiver.FileSet;
+import org.easymock.classextension.EasyMockSupport;
+
+import static org.easymock.EasyMock.anyObject;
+import static org.easymock.EasyMock.expect;
 
 public class AddDirectoryTaskTest
     extends TestCase
 {
 
-    private MockManager mockManager;
+    private EasyMockSupport mockManager;
 
     private TestFileManager fileManager;
 
     private Archiver archiver;
 
-    private MockControl archiverControl;
 
     public void setUp()
     {
         fileManager = new TestFileManager( "ArchiveAssemblyUtils.test.", "" );
 
-        mockManager = new MockManager();
+        mockManager = new EasyMockSupport();
 
-        archiverControl = MockControl.createControl( Archiver.class );
-        mockManager.add( archiverControl );
 
-        archiver = (Archiver) archiverControl.getMock();
+        archiver = mockManager.createMock(Archiver.class);
     }
 
     public void tearDown()
@@ -73,7 +73,7 @@
 
         AddDirectoryTask task = new AddDirectoryTask( dir );
 
-        task.execute( archiver, null );
+        task.execute( archiver );
 
         mockManager.verifyAll();
     }
@@ -85,8 +85,7 @@
 
         try
         {
-            archiver.addFileSet( null );
-            archiverControl.setMatcher( MockControl.ALWAYS_MATCHER );
+            archiver.addFileSet( (FileSet) anyObject() );
         }
         catch ( ArchiverException e )
         {
@@ -101,7 +100,7 @@
 
         task.setOutputDirectory( "dir" );
 
-        task.execute( archiver, null );
+        task.execute( archiver );
 
         mockManager.verifyAll();
     }
@@ -113,8 +112,7 @@
 
         try
         {
-            archiver.addFileSet( null );
-            archiverControl.setMatcher( MockControl.ALWAYS_MATCHER );
+            archiver.addFileSet( (FileSet) anyObject() );
         }
         catch ( ArchiverException e )
         {
@@ -134,7 +132,7 @@
         task.setFileMode( fileMode );
         task.setOutputDirectory( "dir" );
 
-        task.execute( archiver, null );
+        task.execute( archiver );
 
         mockManager.verifyAll();
     }
@@ -146,8 +144,7 @@
 
         try
         {
-            archiver.addFileSet( null );
-            archiverControl.setMatcher( MockControl.ALWAYS_MATCHER );
+            archiver.addFileSet( (FileSet) anyObject() );
         }
         catch ( ArchiverException e )
         {
@@ -164,7 +161,7 @@
         task.setExcludes( Collections.singletonList( "**/README.txt" ) );
         task.setOutputDirectory( "dir" );
 
-        task.execute( archiver, null );
+        task.execute( archiver );
 
         mockManager.verifyAll();
     }
@@ -172,11 +169,8 @@
     private void configureModeExpectations( int defaultDirMode, int defaultFileMode, int dirMode, int fileMode,
                                             boolean expectTwoSets )
     {
-        archiver.getOverrideDirectoryMode();
-        archiverControl.setReturnValue( defaultDirMode );
-
-        archiver.getOverrideFileMode();
-        archiverControl.setReturnValue( defaultFileMode );
+        expect(archiver.getOverrideDirectoryMode()).andReturn( defaultDirMode );
+        expect(archiver.getOverrideFileMode()).andReturn( defaultFileMode );
 
         if ( expectTwoSets )
         {
diff --git a/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTaskTest.java b/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTaskTest.java
index d5d2fc8..4bf89f6 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTaskTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddFileSetsTaskTest.java
@@ -30,17 +30,19 @@
 import org.apache.maven.plugin.assembly.archive.task.testutils.MockAndControlForAddFileSetsTask;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
 import org.apache.maven.plugin.assembly.model.FileSet;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
 import org.apache.maven.plugin.assembly.testutils.TestFileManager;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.logging.Logger;
 import org.codehaus.plexus.logging.console.ConsoleLogger;
+import org.easymock.classextension.EasyMockSupport;
+
+import static org.easymock.EasyMock.expect;
 
 public class AddFileSetsTaskTest
     extends TestCase
 {
 
-    private MockManager mockManager;
+    private EasyMockSupport mockManager;
 
     private TestFileManager fileManager;
 
@@ -49,7 +51,7 @@
     @Override
     public void setUp()
     {
-        mockManager = new MockManager();
+        mockManager = new EasyMockSupport();
 
         fileManager = new TestFileManager( "add-fileset.test.", "" );
 
@@ -139,7 +141,7 @@
 
         final int[] modes = { -1, -1, -1, -1 };
 
-        macTask.expectAdditionOfSingleFileSet( null, null, null, true, modes, 1, true, false );
+        macTask.expectAdditionOfSingleFileSet( null, null, true, modes, 1, true, false );
 
         macTask.expectGetProject( null );
 
@@ -174,7 +176,7 @@
 
         final int[] modes = { -1, -1, -1, -1 };
 
-        macTask.expectAdditionOfSingleFileSet( null, null, null, true, modes, 1, true, false );
+        macTask.expectAdditionOfSingleFileSet( null, null, true, modes, 1, true, false );
 
         macTask.expectGetProject( null );
 
@@ -207,10 +209,8 @@
 
         macTask.expectGetProject( null );
 
-        macTask.archiver.getOverrideDirectoryMode();
-        macTask.archiverCtl.setReturnValue( -1 );
-        macTask.archiver.getOverrideFileMode();
-        macTask.archiverCtl.setReturnValue( -1 );
+        expect(macTask.archiver.getOverrideDirectoryMode()).andReturn( -1 );
+        expect(macTask.archiver.getOverrideFileMode()).andReturn( -1 );
 
         final MavenProject project = new MavenProject( new Model() );
 
@@ -254,9 +254,8 @@
     public void testExecute_ShouldThrowExceptionIfArchiveBasedirProvidedIsNotADirectory()
         throws AssemblyFormattingException, IOException
     {
-        final File archiveBaseDir = fileManager.createTempFile();
 
-        macTask.archiveBaseDir = archiveBaseDir;
+        macTask.archiveBaseDir = fileManager.createTempFile();
         macTask.expectGetArchiveBaseDirectory();
 
         mockManager.replayAll();
diff --git a/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/ArtifactMock.java b/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/ArtifactMock.java
index 2b0e8fe..5460051 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/ArtifactMock.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/ArtifactMock.java
@@ -25,17 +25,16 @@
 
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.handler.ArtifactHandler;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
-import org.easymock.MockControl;
+import org.easymock.classextension.EasyMockSupport;
+
+import static org.easymock.EasyMock.expect;
 
 public class ArtifactMock
 {
 
-    private final MockControl artifactCtl;
 
     private final Artifact artifact;
 
-    private final MockControl handlerCtl;
 
     private final ArtifactHandler handler;
 
@@ -61,61 +60,51 @@
 
     private final String classifier;
 
-    public ArtifactMock( final MockManager mockManager, final String groupId, final String artifactId,
+    public ArtifactMock( final EasyMockSupport mockManager, final String groupId, final String artifactId,
                          final String version, final String type, final boolean isSnapshot )
     {
         this( mockManager, groupId, artifactId, version, type, null, isSnapshot, null, null );
     }
 
-    public ArtifactMock( final MockManager mockManager, final String groupId, final String artifactId,
+    public ArtifactMock( final EasyMockSupport mockManager, final String groupId, final String artifactId,
                          final String version, final String type, final boolean isSnapshot, final String baseVersion )
     {
         this( mockManager, groupId, artifactId, version, type, null, isSnapshot, baseVersion, null );
     }
 
-    public ArtifactMock( final MockManager mockManager, final String groupId, final String artifactId,
+    public ArtifactMock( final EasyMockSupport mockManager, final String groupId, final String artifactId,
                          final String version, final String type, final String classifier, final boolean isSnapshot )
     {
         this( mockManager, groupId, artifactId, version, type, classifier, isSnapshot, null, null );
     }
 
-    public ArtifactMock( final MockManager mockManager, final String groupId, final String artifactId,
+    public ArtifactMock( final EasyMockSupport mockManager, final String groupId, final String artifactId,
                          final String version, final String type, final String classifier, final boolean isSnapshot,
                          final String baseVersion )
     {
         this( mockManager, groupId, artifactId, version, type, classifier, isSnapshot, baseVersion, null );
     }
 
-    public ArtifactMock( final MockManager mockManager, final String groupId, final String artifactId,
-                         final String version, final String type, final String classifier, final boolean isSnapshot,
-                         final String baseVersion, String scope )
+    private ArtifactMock( final EasyMockSupport mockManager, final String groupId, final String artifactId,
+                          final String version, final String type, final String classifier, final boolean isSnapshot,
+                          final String baseVersion, String scope )
     {
-        artifactCtl = MockControl.createControl( Artifact.class );
 
-        mockManager.add( artifactCtl );
-
-        artifact = (Artifact) artifactCtl.getMock();
+        artifact = mockManager.createMock( Artifact.class );
 
         if ( scope == null )
         {
             scope = Artifact.SCOPE_COMPILE;
         }
 
-        artifact.getScope();
-        artifactCtl.setReturnValue( scope, MockControl.ZERO_OR_MORE );
+        expect( artifact.getScope()).andReturn( scope ).anyTimes();
 
-        handlerCtl = MockControl.createControl( ArtifactHandler.class );
+        handler = mockManager.createMock( ArtifactHandler.class );
 
-        mockManager.add( handlerCtl );
-
-        handler = (ArtifactHandler) handlerCtl.getMock();
-
-        artifact.getArtifactHandler();
-        artifactCtl.setReturnValue( handler, MockControl.ZERO_OR_MORE );
+        expect(artifact.getArtifactHandler()).andReturn( handler ).anyTimes();
 
         this.classifier = classifier;
-        artifact.getClassifier();
-        artifactCtl.setReturnValue( classifier, MockControl.ZERO_OR_MORE );
+        expect(artifact.getClassifier()).andReturn( classifier ).anyTimes();
 
         setSnapshot( isSnapshot );
         setGroupId( groupId );
@@ -133,23 +122,16 @@
         setTypeAndExt( extension );
     }
 
-    public MockControl getArtifactCtl()
-    {
-        return artifactCtl;
-    }
-
     public Artifact getArtifact()
     {
         return artifact;
     }
 
-    public void setArtifactId( final String artifactId )
+    void setArtifactId( final String artifactId )
     {
         if ( ( artifactId != null ) && ( this.artifactId == null ) )
         {
-            artifact.getArtifactId();
-            artifactCtl.setReturnValue( artifactId, MockControl.ZERO_OR_MORE );
-
+            expect(artifact.getArtifactId()).andReturn( artifactId ).anyTimes();
             this.artifactId = artifactId;
         }
     }
@@ -158,8 +140,7 @@
     {
         if ( ( baseVersion != null ) && ( this.baseVersion == null ) )
         {
-            artifact.getBaseVersion();
-            artifactCtl.setReturnValue( baseVersion, MockControl.ZERO_OR_MORE );
+            expect(artifact.getBaseVersion()).andReturn( baseVersion ).anyTimes();
 
             this.baseVersion = baseVersion;
         }
@@ -169,30 +150,26 @@
     {
         if ( ( destination != null ) && ( file == null ) )
         {
-            artifact.getFile();
-            artifactCtl.setReturnValue( destination, MockControl.ZERO_OR_MORE );
-
+            expect(artifact.getFile()).andReturn( destination ).anyTimes();
             file = destination;
         }
     }
 
-    public void setGroupId( final String groupId )
+    void setGroupId( final String groupId )
     {
         if ( ( groupId != null ) && ( this.groupId == null ) )
         {
-            artifact.getGroupId();
-            artifactCtl.setReturnValue( groupId, MockControl.ZERO_OR_MORE );
+            expect(artifact.getGroupId()).andReturn( groupId ).anyTimes();
 
             this.groupId = groupId;
         }
     }
 
-    public void setVersion( final String version )
+    void setVersion( final String version )
     {
         if ( ( version != null ) && ( this.version == null ) )
         {
-            artifact.getVersion();
-            artifactCtl.setReturnValue( version, MockControl.ZERO_OR_MORE );
+            expect(artifact.getVersion()).andReturn( version ).anyTimes();
 
             this.version = version;
 
@@ -208,42 +185,35 @@
     {
         if ( ( dependencyTrail != null ) && ( this.dependencyTrail == null ) )
         {
-            artifact.getDependencyTrail();
-            artifactCtl.setReturnValue( dependencyTrail, MockControl.ZERO_OR_MORE );
-
+            expect(artifact.getDependencyTrail()).andReturn( dependencyTrail ).anyTimes();
             this.dependencyTrail = dependencyTrail;
         }
     }
 
-    public void setId( final String id )
+    void setId( final String id )
     {
         if ( ( id != null ) && ( this.id == null ) )
         {
-            artifact.getId();
-            artifactCtl.setReturnValue( id, MockControl.ZERO_OR_MORE );
-
+            expect(artifact.getId()).andReturn( id ).anyTimes();
             this.id = id;
         }
     }
 
-    public void setDependencyConflictId( final String id )
+    void setDependencyConflictId( final String id )
     {
         if ( ( id != null ) && ( dependencyConflictId == null ) )
         {
-            artifact.getDependencyConflictId();
-            artifactCtl.setReturnValue( id, MockControl.ZERO_OR_MORE );
+           expect( artifact.getDependencyConflictId()).andReturn( id ).anyTimes();
 
             dependencyConflictId = id;
         }
     }
 
-    public void setSnapshot( final boolean snapshot )
+    void setSnapshot( final boolean snapshot )
     {
         if ( isSnapshot == null )
         {
-            artifact.isSnapshot();
-            artifactCtl.setReturnValue( snapshot, MockControl.ZERO_OR_MORE );
-
+           expect(artifact.isSnapshot()).andReturn( snapshot ).anyTimes();
             isSnapshot = snapshot;
         }
     }
@@ -255,17 +225,14 @@
         {
             final File newFile = File.createTempFile( "ArtifactMock.test.", "" );
             newFile.deleteOnExit();
-
-            artifact.getFile();
-            artifactCtl.setReturnValue( newFile, MockControl.ZERO_OR_MORE );
-
+            expect( artifact.getFile()).andReturn( newFile ).anyTimes();
             file = newFile;
         }
 
         return file;
     }
 
-    public void setType( final String type )
+    void setType( final String type )
     {
         setTypeAndExt( type );
     }
@@ -274,12 +241,8 @@
     {
         if ( ( type != null ) && ( typeAndExt == null ) )
         {
-            artifact.getType();
-            artifactCtl.setReturnValue( type, MockControl.ZERO_OR_MORE );
-
-            handler.getExtension();
-            handlerCtl.setReturnValue( type, MockControl.ZERO_OR_MORE );
-
+            expect(artifact.getType()).andReturn( type ).anyTimes();
+            expect(handler.getExtension()).andReturn( type ).anyTimes();
             typeAndExt = type;
         }
     }
@@ -307,8 +270,7 @@
 
     public void setNullFile()
     {
-        artifact.getFile();
-        artifactCtl.setReturnValue( null, MockControl.ZERO_OR_MORE );
+        expect(artifact.getFile()).andReturn( null ).anyTimes();
 
         file = new File( "set-to-null" );
     }
diff --git a/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddArtifactTask.java b/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddArtifactTask.java
index 93999da..1fa49f6 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddArtifactTask.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddArtifactTask.java
@@ -24,83 +24,62 @@
 
 import junit.framework.Assert;
 
-import org.apache.maven.execution.MavenSession;
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.archiver.Archiver;
 import org.codehaus.plexus.archiver.ArchiverException;
-import org.easymock.MockControl;
+import org.easymock.EasyMock;
+import org.easymock.classextension.EasyMockSupport;
+
+import static org.easymock.EasyMock.anyObject;
+import static org.easymock.EasyMock.expect;
 
 public class MockAndControlForAddArtifactTask
 {
 
-    public Archiver archiver;
-
-    public MockControl archiverCtl;
+    public final Archiver archiver;
 
     public AssemblerConfigurationSource configSource;
 
-    public MockControl configSourceCtl;
-
     private MavenProject project = null;
 
-    public MockAndControlForAddArtifactTask( final MockManager mockManager )
+    public MockAndControlForAddArtifactTask( final EasyMockSupport mockManager )
     {
         this( mockManager, null );
     }
 
-    public MockAndControlForAddArtifactTask( final MockManager mockManager, final MavenProject project )
+    public MockAndControlForAddArtifactTask( final EasyMockSupport mockManager, final MavenProject project )
     {
         this.project = project;
 
-        archiverCtl = MockControl.createControl( Archiver.class );
-        mockManager.add( archiverCtl );
-
-        archiver = (Archiver) archiverCtl.getMock();
-
-        configSourceCtl = MockControl.createControl( AssemblerConfigurationSource.class );
-        mockManager.add( configSourceCtl );
-
-        configSource = (AssemblerConfigurationSource) configSourceCtl.getMock();
+        archiver = mockManager.createMock(Archiver.class);
+        configSource = mockManager.createMock(AssemblerConfigurationSource.class);
 
         enableDefaultExpectations();
     }
 
     private void enableDefaultExpectations()
     {
-        configSource.getProject();
-        configSourceCtl.setReturnValue( project, MockControl.ZERO_OR_MORE );
-
-        configSource.getMavenSession();
-        configSourceCtl.setReturnValue( null, MockControl.ZERO_OR_MORE );
+        expect( configSource.getProject()).andReturn( project ).anyTimes();
+        expect( configSource.getMavenSession()).andReturn( null ).anyTimes();
     }
 
     public void expectGetFinalName( final String finalName )
     {
-        configSource.getFinalName();
-        configSourceCtl.setReturnValue( finalName, MockControl.ONE_OR_MORE );
+        expect(configSource.getFinalName()).andReturn( finalName ).atLeastOnce();
     }
 
     public void expectGetDestFile( final File destFile )
     {
-        archiver.getDestFile();
-        archiverCtl.setReturnValue( destFile, MockControl.ZERO_OR_MORE );
+        expect(archiver.getDestFile()).andReturn( destFile ).atLeastOnce();
     }
 
-    public void expectAddArchivedFileSet( final File artifactFile, final String outputLocation,
-                                          final String[] includes, final String[] excludes )
+    public void expectAddArchivedFileSet()
     {
         try
         {
-            archiver.addArchivedFileSet( artifactFile, outputLocation, includes, excludes );
-
-            if ( ( includes != null ) || ( excludes != null ) )
-            {
-                archiverCtl.setMatcher( MockControl.ARRAY_MATCHER );
-            }
-
-            archiverCtl.setVoidCallable( MockControl.ONE_OR_MORE );
+            archiver.addArchivedFileSet( (File)anyObject(), (String)anyObject(), (String[])anyObject(), (String[])anyObject() );
+            EasyMock.expectLastCall().atLeastOnce();
         }
         catch ( final ArchiverException e )
         {
@@ -111,11 +90,8 @@
     public void expectModeChange( final int originalDirMode, final int originalFileMode, final int dirMode,
                                   final int fileMode, final int numberOfChanges )
     {
-        archiver.getOverrideDirectoryMode();
-        archiverCtl.setReturnValue( originalDirMode );
-
-        archiver.getOverrideFileMode();
-        archiverCtl.setReturnValue( originalFileMode );
+        expect( archiver.getOverrideDirectoryMode()).andReturn( originalDirMode );
+        expect(archiver.getOverrideFileMode()).andReturn( originalFileMode );
 
         // one of the changes will occur below, when we restore the original mode.
         if ( numberOfChanges > 1 )
@@ -150,7 +126,7 @@
         try
         {
             archiver.addFile( file, outputLocation, fileMode );
-            archiverCtl.setVoidCallable( MockControl.ONE_OR_MORE );
+            EasyMock.expectLastCall().atLeastOnce();
         }
         catch ( final ArchiverException e )
         {
@@ -163,7 +139,7 @@
         try
         {
             archiver.addFile( file, outputLocation );
-            archiverCtl.setVoidCallable( MockControl.ONE_OR_MORE );
+            EasyMock.expectLastCall().atLeastOnce();
         }
         catch ( final ArchiverException e )
         {
@@ -173,13 +149,7 @@
 
     public void expectGetReactorProjects( final List<MavenProject> projects )
     {
-        configSource.getReactorProjects();
-        configSourceCtl.setReturnValue( projects, MockControl.ONE_OR_MORE );
+       expect(configSource.getReactorProjects()).andReturn( projects ).atLeastOnce();
     }
 
-    public void expectGetSession( final MavenSession session )
-    {
-        configSource.getMavenSession();
-        configSourceCtl.setReturnValue( session, MockControl.ONE_OR_MORE );
-    }
 }
diff --git a/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddDependencySetsTask.java b/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddDependencySetsTask.java
index 80c0598..d9f932a 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddDependencySetsTask.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddDependencySetsTask.java
@@ -24,92 +24,70 @@
 
 import junit.framework.Assert;
 
+import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.project.MavenProjectBuilder;
 import org.apache.maven.project.ProjectBuildingException;
 import org.codehaus.plexus.archiver.Archiver;
 import org.codehaus.plexus.archiver.ArchiverException;
 import org.codehaus.plexus.archiver.manager.ArchiverManager;
-import org.easymock.MockControl;
+import org.easymock.EasyMock;
+import org.easymock.classextension.EasyMockSupport;
+
+import static org.easymock.EasyMock.anyObject;
+import static org.easymock.EasyMock.expect;
 
 public class MockAndControlForAddDependencySetsTask
 {
 
-    public Archiver archiver;
+    public final Archiver archiver;
 
-    public MockControl archiverCtl;
+    public final AssemblerConfigurationSource configSource;
 
-    public AssemblerConfigurationSource configSource;
+    public final MavenProjectBuilder projectBuilder;
 
-    public MockControl configSourceCtl;
-
-    public MockControl dependencyResolverCtl;
-
-    public MavenProjectBuilder projectBuilder;
-
-    public MockControl archiverManagerCtl;
-
-    public ArchiverManager archiverManager;
-
-    public MockControl projectBuilderCtl;
+    public final ArchiverManager archiverManager;
 
     private final MavenProject project;
 
-    public MockAndControlForAddDependencySetsTask( final MockManager mockManager )
+    public MockAndControlForAddDependencySetsTask( final EasyMockSupport mockManager )
     {
         this( mockManager, null );
     }
 
-    public MockAndControlForAddDependencySetsTask( final MockManager mockManager, final MavenProject project )
+    public MockAndControlForAddDependencySetsTask( final EasyMockSupport mockManager, final MavenProject project )
     {
         this.project = project;
 
-        archiverCtl = MockControl.createControl( Archiver.class );
-        mockManager.add( archiverCtl );
+        archiver = mockManager.createMock(Archiver.class);
+        configSource = mockManager.createMock (AssemblerConfigurationSource.class);
 
-        archiver = (Archiver) archiverCtl.getMock();
 
-        configSourceCtl = MockControl.createControl( AssemblerConfigurationSource.class );
-        mockManager.add( configSourceCtl );
+        projectBuilder = mockManager.createMock(MavenProjectBuilder.class);
 
-        configSource = (AssemblerConfigurationSource) configSourceCtl.getMock();
-
-        projectBuilderCtl = MockControl.createControl( MavenProjectBuilder.class );
-        mockManager.add( projectBuilderCtl );
-
-        projectBuilder = (MavenProjectBuilder) projectBuilderCtl.getMock();
-
-        archiverManagerCtl = MockControl.createControl( ArchiverManager.class );
-        mockManager.add( archiverManagerCtl );
-
-        archiverManager = (ArchiverManager) archiverManagerCtl.getMock();
+        archiverManager = mockManager.createMock(ArchiverManager.class);
 
         enableDefaultExpectations();
     }
 
     private void enableDefaultExpectations()
     {
-        configSource.getProject();
-        configSourceCtl.setReturnValue( project, MockControl.ZERO_OR_MORE );
+        expect(configSource.getProject()).andReturn( project ).anyTimes();
     }
 
-    public void expectAddArchivedFileSet( final File file, final String outputLocation, final String[] includes,
-                                          final String[] excludes )
+    public void expectAddArchivedFileSet()
     {
         try
         {
-            archiver.addArchivedFileSet( file, outputLocation, includes, excludes );
+            archiver.addArchivedFileSet( (File)anyObject(), (String)anyObject(), (String[])anyObject(), (String[])anyObject() );
 
-            if ( ( includes != null ) || ( excludes != null ) )
-            {
-                archiverCtl.setMatcher( MockControl.ARRAY_MATCHER );
-            }
+                archiver.addArchivedFileSet( (File) anyObject(), (String) anyObject(), (String[]) anyObject(),
+                                             (String[]) anyObject() );
+            EasyMock.expectLastCall().anyTimes();
 
-            archiverCtl.setVoidCallable( MockControl.ONE_OR_MORE );
         }
         catch ( final ArchiverException e )
         {
@@ -120,11 +98,8 @@
     public void expectModeChange( final int originalDirMode, final int originalFileMode, final int dirMode,
                                   final int fileMode, final int numberOfChanges )
     {
-        archiver.getOverrideDirectoryMode();
-        archiverCtl.setReturnValue( originalDirMode );
-
-        archiver.getOverrideFileMode();
-        archiverCtl.setReturnValue( originalFileMode );
+        expect( archiver.getOverrideDirectoryMode()).andReturn( originalDirMode );
+        expect(archiver.getOverrideFileMode()).andReturn( originalFileMode );
 
         // one of the changes will occur below, when we restore the original mode.
         if ( numberOfChanges > 1 )
@@ -166,38 +141,32 @@
 
     public void expectGetReactorProjects( final List<MavenProject> projects )
     {
-        configSource.getReactorProjects();
-        configSourceCtl.setReturnValue( projects, MockControl.ONE_OR_MORE );
+        expect(configSource.getReactorProjects()).andReturn( projects ).anyTimes();
     }
 
     public void expectCSGetFinalName( final String finalName )
     {
-        configSource.getFinalName();
-        configSourceCtl.setReturnValue( finalName, MockControl.ONE_OR_MORE );
+        expect(configSource.getFinalName()).andReturn( finalName ).anyTimes();
     }
 
     public void expectGetDestFile( final File destFile )
     {
-        archiver.getDestFile();
-        archiverCtl.setReturnValue( destFile, MockControl.ZERO_OR_MORE );
+        expect(archiver.getDestFile()).andReturn( destFile ).anyTimes();
     }
 
     public void expectCSGetRepositories( final ArtifactRepository localRepo, final List<ArtifactRepository> remoteRepos )
     {
-        configSource.getLocalRepository();
-        configSourceCtl.setReturnValue( localRepo, MockControl.ONE_OR_MORE );
-
-        configSource.getRemoteRepositories();
-        configSourceCtl.setReturnValue( remoteRepos, MockControl.ONE_OR_MORE );
+        expect(configSource.getLocalRepository()).andReturn( localRepo ).anyTimes();
+        expect(configSource.getRemoteRepositories()).andReturn( remoteRepos ).anyTimes();
     }
 
     public void expectBuildFromRepository( final ProjectBuildingException error )
     {
         try
         {
-            projectBuilder.buildFromRepository( null, null, null );
-            projectBuilderCtl.setMatcher( MockControl.ALWAYS_MATCHER );
-            projectBuilderCtl.setThrowable( error, MockControl.ONE_OR_MORE );
+            expect(projectBuilder.buildFromRepository( (Artifact) anyObject(), (List) anyObject(),
+                                                (ArtifactRepository) anyObject() )).andThrow( error );
+//            projectBuilderCtl.setThrowable( error, MockControl.ONE_OR_MORE );
         }
         catch ( final ProjectBuildingException e )
         {
@@ -209,9 +178,7 @@
     {
         try
         {
-            projectBuilder.buildFromRepository( null, null, null );
-            projectBuilderCtl.setMatcher( MockControl.ALWAYS_MATCHER );
-            projectBuilderCtl.setReturnValue( project, MockControl.ONE_OR_MORE );
+            expect(projectBuilder.buildFromRepository( ( Artifact) anyObject(), (List)anyObject(), (ArtifactRepository)anyObject() )).andReturn( project ).anyTimes();
         }
         catch ( final ProjectBuildingException e )
         {
@@ -221,8 +188,7 @@
 
     public void expectGetSession( final MavenSession session )
     {
-        configSource.getMavenSession();
-        configSourceCtl.setReturnValue( session, MockControl.ZERO_OR_MORE );
+        expect(configSource.getMavenSession()).andReturn( session ).anyTimes();
     }
 
 }
diff --git a/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddFileSetsTask.java b/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddFileSetsTask.java
index 9d587f9..8826128 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddFileSetsTask.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddFileSetsTask.java
@@ -19,73 +19,50 @@
  * under the License.
  */
 
-import java.io.File;
-
 import junit.framework.Assert;
-
-import org.apache.maven.execution.MavenSession;
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
 import org.apache.maven.plugin.assembly.testutils.TestFileManager;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.archiver.Archiver;
 import org.codehaus.plexus.archiver.ArchiverException;
-import org.easymock.MockControl;
+import org.codehaus.plexus.archiver.FileSet;
+import org.easymock.EasyMock;
+import org.easymock.classextension.EasyMockSupport;
+
+import java.io.File;
+
+import static org.easymock.EasyMock.anyObject;
+import static org.easymock.EasyMock.expect;
 
 public class MockAndControlForAddFileSetsTask
 {
 
-    public AssemblerConfigurationSource configSource;
+    public final AssemblerConfigurationSource configSource;
 
-    public MockControl configSourceCtl;
 
     public Archiver archiver;
 
-    public MockControl archiverCtl;
-
-    public TestFileManager fileManager;
-
     public File archiveBaseDir;
 
-    public MockAndControlForAddFileSetsTask( MockManager mockManager, TestFileManager fileManager )
+    public MockAndControlForAddFileSetsTask( EasyMockSupport mockManager, TestFileManager fileManager )
     {
-        this.fileManager = fileManager;
-
-        configSourceCtl = MockControl.createControl( AssemblerConfigurationSource.class );
-        mockManager.add( configSourceCtl );
-
-        configSource = (AssemblerConfigurationSource) configSourceCtl.getMock();
-
-        archiverCtl = MockControl.createControl( Archiver.class );
-        mockManager.add( archiverCtl );
-
-        archiver = (Archiver) archiverCtl.getMock();
-
+        configSource = mockManager.createMock (AssemblerConfigurationSource.class);
+        archiver = mockManager.createMock (Archiver.class);
         archiveBaseDir = fileManager.createTempDir();
 
-        configSource.getMavenSession();
-        configSourceCtl.setReturnValue( null, MockControl.ZERO_OR_MORE );
+        expect(configSource.getMavenSession()).andReturn( null).anyTimes();
     }
 
     public void expectGetArchiveBaseDirectory()
     {
-        configSource.getArchiveBaseDirectory();
-        configSourceCtl.setReturnValue( archiveBaseDir, MockControl.ONE_OR_MORE );
+        expect(configSource.getArchiveBaseDirectory()).andReturn( archiveBaseDir ).anyTimes();
     }
 
-    public void expectGetBasedir( File basedir )
+    void expectModeChanges( int[] modes, int modeChangeCount )
     {
-        configSource.getBasedir();
-        configSourceCtl.setReturnValue( basedir, MockControl.ONE_OR_MORE );
-    }
+        expect(archiver.getOverrideDirectoryMode()).andReturn( modes[0] );
+        expect(archiver.getOverrideFileMode()).andReturn( modes[1] );
 
-    public void expectModeChanges( int[] modes, int modeChangeCount )
-    {
-        archiver.getOverrideDirectoryMode();
-        archiverCtl.setReturnValue( modes[0] );
-
-        archiver.getOverrideFileMode();
-        archiverCtl.setReturnValue( modes[1] );
 
         if ( modeChangeCount > 1 )
         {
@@ -114,37 +91,30 @@
         }
     }
 
-    public void expectAdditionOfSingleFileSet( MavenProject project, File basedir, String finalName,
-                                               boolean shouldAddDir, int[] modes, int modeChangeCount,
+    public void expectAdditionOfSingleFileSet( MavenProject project, String finalName, boolean shouldAddDir, int[] modes, int modeChangeCount,
                                                boolean isDebugEnabled )
     {
-        expectAdditionOfSingleFileSet( project, basedir, finalName, shouldAddDir, modes, modeChangeCount,
+        expectAdditionOfSingleFileSet( project, finalName, shouldAddDir, modes, modeChangeCount,
                                        isDebugEnabled, true );
 
     }
 
-    public void expectAdditionOfSingleFileSet( MavenProject project, File basedir, String finalName,
-                                               boolean shouldAddDir, int[] modes, int modeChangeCount,
+    public void expectAdditionOfSingleFileSet( MavenProject project, String finalName, boolean shouldAddDir, int[] modes, int modeChangeCount,
                                                boolean isDebugEnabled, boolean isProjectUsed )
     {
         // the logger sends a debug message with this info inside the addFileSet(..) method..
         if ( isDebugEnabled )
         {
-            archiver.getOverrideDirectoryMode();
-            archiverCtl.setReturnValue( modes[0] );
-
-            archiver.getOverrideFileMode();
-            archiverCtl.setReturnValue( modes[1] );
+            expect(archiver.getOverrideDirectoryMode()).andReturn( modes[0] );
+            expect(archiver.getOverrideFileMode()).andReturn( modes[1] );
         }
 
         if ( isProjectUsed )
         {
-            configSource.getProject();
-            configSourceCtl.setReturnValue( project, MockControl.ONE_OR_MORE );
+            expect(configSource.getProject()).andReturn( project ).atLeastOnce();
         }
 
-        configSource.getFinalName();
-        configSourceCtl.setReturnValue( finalName, MockControl.ONE_OR_MORE );
+        expect( configSource.getFinalName()).andReturn( finalName ).atLeastOnce();
 
         if ( shouldAddDir )
         {
@@ -152,9 +122,8 @@
 
             try
             {
-                archiver.addFileSet( null );
-                archiverCtl.setMatcher( MockControl.ALWAYS_MATCHER );
-                archiverCtl.setVoidCallable( MockControl.ONE_OR_MORE );
+                archiver.addFileSet( (FileSet) anyObject() );
+                EasyMock.expectLastCall().atLeastOnce();
             }
             catch ( ArchiverException e )
             {
@@ -166,20 +135,12 @@
 
     public void expectGetProject( MavenProject project )
     {
-        configSource.getProject();
-        configSourceCtl.setReturnValue( project, MockControl.ONE_OR_MORE );
-    }
-
-    public void expectGetSession( MavenSession session )
-    {
-        configSource.getMavenSession();
-        configSourceCtl.setReturnValue( session, MockControl.ONE_OR_MORE );
+        expect(configSource.getProject()).andReturn( project ).atLeastOnce();
     }
 
     public void expectGetFinalName( String finalName )
     {
-        configSource.getFinalName();
-        configSourceCtl.setReturnValue( finalName, MockControl.ONE_OR_MORE );
+        expect( configSource.getFinalName()).andReturn( finalName ).atLeastOnce();
     }
 
 }
diff --git a/src/test/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolverTest.java b/src/test/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolverTest.java
index 6578c0a..ebca505 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolverTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolverTest.java
@@ -19,19 +19,12 @@
  * under the License.
  */
 
-import java.io.File;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Set;
-
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.repository.ArtifactRepositoryFactory;
 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
-import org.apache.maven.artifact.resolver.ArtifactCollector;
 import org.apache.maven.artifact.resolver.ArtifactResolver;
 import org.apache.maven.model.Model;
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
@@ -40,12 +33,20 @@
 import org.apache.maven.plugin.assembly.model.ModuleBinaries;
 import org.apache.maven.plugin.assembly.model.ModuleSet;
 import org.apache.maven.plugin.assembly.model.Repository;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
+import org.apache.maven.plugin.assembly.resolved.AssemblyId;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.PlexusTestCase;
 import org.codehaus.plexus.logging.Logger;
 import org.codehaus.plexus.logging.console.ConsoleLogger;
-import org.easymock.MockControl;
+import org.easymock.classextension.EasyMockSupport;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Set;
+
+import static org.easymock.EasyMock.expect;
 
 public class DefaultDependencyResolverTest
     extends PlexusTestCase
@@ -61,8 +62,6 @@
 
     private ArtifactMetadataSource metadataSource;
 
-    private ArtifactCollector collector;
-
     private ConsoleLogger logger;
 
     @Override
@@ -76,7 +75,6 @@
         factory = (ArtifactFactory) lookup( ArtifactFactory.ROLE );
         repoFactory = (ArtifactRepositoryFactory) lookup( ArtifactRepositoryFactory.ROLE );
         layout = (ArtifactRepositoryLayout) lookup( ArtifactRepositoryLayout.ROLE, "default" );
-        collector = (ArtifactCollector) lookup( ArtifactCollector.class.getName() );
         logger = new ConsoleLogger( Logger.LEVEL_DEBUG, "test" );
     }
 
@@ -101,10 +99,11 @@
 
         final ResolutionManagementInfo info = new ResolutionManagementInfo( project );
 
-        new DefaultDependencyResolver( resolver, metadataSource, factory, collector, logger ).getDependencySetResolutionRequirements( new Assembly(),
-                                                                                                                                      depSets,
-                                                                                                                                      info,
-                                                                                                                                      project );
+        final Assembly assembly = new Assembly();
+        new DefaultDependencyResolver( resolver, metadataSource, factory, logger ).updateDependencySetResolutionRequirements(
+            depSets,
+                info, AssemblyId.createAssemblyId( assembly),
+                project);
 
         assertTrue( info.isResolutionRequired() );
         assertFalse( info.isResolvedTransitively() );
@@ -121,12 +120,9 @@
     public void test_getModuleSetResolutionRequirements()
         throws DependencyResolutionException
     {
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
-        final MockControl csControl = MockControl.createControl( AssemblerConfigurationSource.class );
-        mm.add( csControl );
-
-        final AssemblerConfigurationSource cs = (AssemblerConfigurationSource) csControl.getMock();
+        final AssemblerConfigurationSource cs = mm.createMock( AssemblerConfigurationSource.class );
 
         final File rootDir = new File( "root" );
         final MavenProject project = createMavenProject( "main-group", "main-artifact", "1", rootDir );
@@ -159,11 +155,9 @@
         allProjects.add( module2 );
         allProjects.add( module2a );
 
-        cs.getReactorProjects();
-        csControl.setReturnValue( allProjects, MockControl.ZERO_OR_MORE );
+        expect( cs.getReactorProjects()).andReturn( allProjects ).anyTimes();
 
-        cs.getProject();
-        csControl.setReturnValue( project, MockControl.ZERO_OR_MORE );
+        expect( cs.getProject()).andReturn( project ).anyTimes();
 
         final ResolutionManagementInfo info = new ResolutionManagementInfo( project );
 
@@ -202,13 +196,13 @@
         mm.replayAll();
 
         final DefaultDependencyResolver resolver =
-            new DefaultDependencyResolver( this.resolver, metadataSource, factory, collector, logger );
+            new DefaultDependencyResolver( this.resolver, metadataSource, factory, logger );
         resolver.enableLogging( new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) );
 
         final Assembly assembly = new Assembly();
         assembly.setModuleSets( moduleSets );
 
-        resolver.getModuleSetResolutionRequirements( assembly, info, cs );
+        resolver.updateModuleSetResolutionRequirements(assembly, info, cs);
 
         assertTrue( info.isResolutionRequired() );
 
@@ -257,9 +251,9 @@
         assembly.setRepositories( repositories );
 
         final ResolutionManagementInfo info = new ResolutionManagementInfo( project );
-        new DefaultDependencyResolver( resolver, metadataSource, factory, collector, logger ).getRepositoryResolutionRequirements( assembly,
-                                                                                                                                   info,
-                                                                                                                                   project );
+        new DefaultDependencyResolver( resolver, metadataSource, factory, logger ).updateRepositoryResolutionRequirements(assembly,
+                info
+        );
 
         assertTrue( info.isResolutionRequired() );
 
@@ -298,7 +292,7 @@
         project.setRemoteArtifactRepositories( projectRepos );
 
         final List<ArtifactRepository> aggregated =
-            new DefaultDependencyResolver( resolver, metadataSource, factory, collector, logger ).aggregateRemoteArtifactRepositories( externalRepos,
+            new DefaultDependencyResolver( resolver, metadataSource, factory, logger ).aggregateRemoteArtifactRepositories( externalRepos,
                                                                                                                                        Collections.singleton( project ) );
 
         assertRepositoryWithId( er1.getId(), aggregated, true );
diff --git a/src/test/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilterTest.java b/src/test/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilterTest.java
index dc89740..dcca373 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilterTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilterTest.java
@@ -57,6 +57,8 @@
 import org.jdom.input.SAXBuilder;
 import org.jdom.xpath.XPath;
 
+import javax.annotation.Nonnull;
+
 public class ComponentsXmlArchiverFileFilterTest
     extends TestCase
 {
@@ -80,8 +82,8 @@
     public void testAddComponentsXml_ShouldAddComponentWithoutRoleHint()
         throws IOException, XmlPullParserException
     {
-        final Reader reader =
-            writeComponentsXml( Collections.singletonList( new ComponentDef( "role", null, "org.apache.maven.Impl" ) ) );
+        final Reader reader = writeComponentsXml(
+            Collections.singletonList( new ComponentDef( "role", null, "org.apache.maven.Impl" ) ) );
 
         filter.addComponentsXml( reader );
 
@@ -89,18 +91,16 @@
 
         final Xpp3Dom componentDom = filter.components.get( "role" );
 
-        assertEquals( "role", componentDom.getChild( "role" )
-                                          .getValue() );
+        assertEquals( "role", componentDom.getChild( "role" ).getValue() );
         assertNull( componentDom.getChild( "role-hint" ) );
-        assertEquals( "org.apache.maven.Impl", componentDom.getChild( "implementation" )
-                                                           .getValue() );
+        assertEquals( "org.apache.maven.Impl", componentDom.getChild( "implementation" ).getValue() );
     }
 
     public void testAddComponentsXml_ShouldAddComponentWithRoleHint()
         throws IOException, XmlPullParserException
     {
-        final Reader reader =
-            writeComponentsXml( Collections.singletonList( new ComponentDef( "role", "hint", "org.apache.maven.Impl" ) ) );
+        final Reader reader = writeComponentsXml(
+            Collections.singletonList( new ComponentDef( "role", "hint", "org.apache.maven.Impl" ) ) );
 
         filter.addComponentsXml( reader );
 
@@ -108,12 +108,9 @@
 
         final Xpp3Dom componentDom = filter.components.get( "rolehint" );
 
-        assertEquals( "role", componentDom.getChild( "role" )
-                                          .getValue() );
-        assertEquals( "hint", componentDom.getChild( "role-hint" )
-                                          .getValue() );
-        assertEquals( "org.apache.maven.Impl", componentDom.getChild( "implementation" )
-                                                           .getValue() );
+        assertEquals( "role", componentDom.getChild( "role" ).getValue() );
+        assertEquals( "hint", componentDom.getChild( "role-hint" ).getValue() );
+        assertEquals( "org.apache.maven.Impl", componentDom.getChild( "implementation" ).getValue() );
     }
 
     public void testAddComponentsXml_ShouldAddTwoComponentsWithRoleHints()
@@ -132,21 +129,15 @@
 
         Xpp3Dom componentDom = filter.components.get( "rolehint" );
 
-        assertEquals( "role", componentDom.getChild( "role" )
-                                          .getValue() );
-        assertEquals( "hint", componentDom.getChild( "role-hint" )
-                                          .getValue() );
-        assertEquals( "org.apache.maven.Impl", componentDom.getChild( "implementation" )
-                                                           .getValue() );
+        assertEquals( "role", componentDom.getChild( "role" ).getValue() );
+        assertEquals( "hint", componentDom.getChild( "role-hint" ).getValue() );
+        assertEquals( "org.apache.maven.Impl", componentDom.getChild( "implementation" ).getValue() );
 
         componentDom = filter.components.get( "rolehint2" );
 
-        assertEquals( "role", componentDom.getChild( "role" )
-                                          .getValue() );
-        assertEquals( "hint2", componentDom.getChild( "role-hint" )
-                                           .getValue() );
-        assertEquals( "org.apache.maven.Impl2", componentDom.getChild( "implementation" )
-                                                            .getValue() );
+        assertEquals( "role", componentDom.getChild( "role" ).getValue() );
+        assertEquals( "hint2", componentDom.getChild( "role-hint" ).getValue() );
+        assertEquals( "org.apache.maven.Impl2", componentDom.getChild( "implementation" ).getValue() );
     }
 
     public void testAddToArchive_ShouldWriteComponentWithoutHintToFile()
@@ -366,11 +357,11 @@
 
     private static final class ComponentDef
     {
-        String role;
+        final String role;
 
-        String roleHint;
+        final String roleHint;
 
-        String implementation;
+        final String implementation;
 
         ComponentDef( final String role, final String roleHint, final String implementation )
         {
@@ -393,32 +384,32 @@
 
         private boolean ignorePermissions;
 
-        public void addDirectory( final File directory )
+        public void addDirectory( final @Nonnull File directory )
             throws ArchiverException
         {
             throw new UnsupportedOperationException( "not supported" );
         }
 
-        public void addDirectory( final File directory, final String prefix )
+        public void addDirectory( final @Nonnull File directory, final String prefix )
             throws ArchiverException
         {
             throw new UnsupportedOperationException( "not supported" );
         }
 
-        public void addDirectory( final File directory, final String[] includes, final String[] excludes )
+        public void addDirectory( final @Nonnull File directory, final String[] includes, final String[] excludes )
             throws ArchiverException
         {
             throw new UnsupportedOperationException( "not supported" );
         }
 
-        public void addDirectory( final File directory, final String prefix, final String[] includes,
+        public void addDirectory( final @Nonnull File directory, final String prefix, final String[] includes,
                                   final String[] excludes )
             throws ArchiverException
         {
             throw new UnsupportedOperationException( "not supported" );
         }
 
-        public void addFile( final File inputFile, final String destFileName )
+        public void addFile( final @Nonnull File inputFile, final @Nonnull String destFileName )
             throws ArchiverException
         {
             this.inputFile = inputFile;
@@ -435,7 +426,7 @@
             return destFileName;
         }
 
-        public void addFile( final File inputFile, final String destFileName, final int permissions )
+        public void addFile( final @Nonnull File inputFile, final @Nonnull String destFileName, final int permissions )
             throws ArchiverException
         {
             throw new UnsupportedOperationException( "not supported" );
@@ -462,8 +453,20 @@
             throw new UnsupportedOperationException( "not supported" );
         }
 
+        public void addSymlink( String s, String s2 )
+            throws ArchiverException
+        {
+            throw new UnsupportedOperationException( "not supported" );
+        }
+
+        public void addSymlink( String s, int i, String s2 )
+            throws ArchiverException
+        {
+            throw new UnsupportedOperationException( "not supported" );
+        }
+
         @SuppressWarnings( "rawtypes" )
-        public Map getFiles()
+        public Map<String, ArchiveEntry> getFiles()
         {
             throw new UnsupportedOperationException( "not supported" );
         }
@@ -493,13 +496,13 @@
             throw new UnsupportedOperationException( "not supported" );
         }
 
-        public void addArchivedFileSet( final File archiveFile )
+        public void addArchivedFileSet( final @Nonnull File archiveFile )
             throws ArchiverException
         {
             throw new UnsupportedOperationException( "not supported" );
         }
 
-        public void addArchivedFileSet( final File archiveFile, final String prefix )
+        public void addArchivedFileSet( final @Nonnull File archiveFile, final String prefix )
             throws ArchiverException
         {
             throw new UnsupportedOperationException( "not supported" );
@@ -511,7 +514,7 @@
             throw new UnsupportedOperationException( "not supported" );
         }
 
-        public void addArchivedFileSet( final File archiveFile, final String prefix, final String[] includes,
+        public void addArchivedFileSet( final @Nonnull File archiveFile, final String prefix, final String[] includes,
                                         final String[] excludes )
             throws ArchiverException
         {
@@ -543,7 +546,7 @@
             throw new UnsupportedOperationException( "not supported" );
         }
 
-        public void addFileSet( final FileSet fileSet )
+        public void addFileSet( final @Nonnull FileSet fileSet )
             throws ArchiverException
         {
             throw new UnsupportedOperationException( "not supported" );
@@ -561,7 +564,9 @@
             throw new UnsupportedOperationException( "not supported" );
         }
 
-        public ResourceIterator getResources()
+        public
+        @Nonnull
+        ResourceIterator getResources()
             throws ArchiverException
         {
             return new ResourceIterator()
diff --git a/src/test/java/org/apache/maven/plugin/assembly/format/FileFormatterTest.java b/src/test/java/org/apache/maven/plugin/assembly/format/FileFormatterTest.java
index 9439f20..d54a138 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/format/FileFormatterTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/format/FileFormatterTest.java
@@ -19,22 +19,25 @@
  * under the License.
  */
 
-import java.io.File;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
 import org.apache.maven.model.Build;
 import org.apache.maven.model.Model;
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
 import org.apache.maven.plugin.assembly.testutils.TestFileManager;
 import org.apache.maven.project.MavenProject;
+import org.apache.maven.shared.filtering.MavenFileFilter;
 import org.codehaus.plexus.PlexusTestCase;
 import org.codehaus.plexus.logging.Logger;
 import org.codehaus.plexus.logging.console.ConsoleLogger;
-import org.easymock.MockControl;
+import org.easymock.classextension.EasyMockSupport;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import static org.easymock.EasyMock.expect;
 
 public class FileFormatterTest
     extends PlexusTestCase
@@ -44,35 +47,33 @@
 
     private final TestFileManager fileManager = new TestFileManager( "fileFormatterTest.", "" );
 
-    private final MockManager mockManager = new MockManager();
+    private final EasyMockSupport mockManager = new EasyMockSupport();
 
     private AssemblerConfigurationSource configSource;
 
-    private MockControl configSourceControl;
 
     @Override
-    public void setUp() throws Exception
+    public void setUp()
+        throws Exception
     {
         super.setUp();
 
-        configSourceControl = MockControl.createControl( AssemblerConfigurationSource.class );
-        mockManager.add( configSourceControl );
-
-        configSource = (AssemblerConfigurationSource) configSourceControl.getMock();
+        configSource = mockManager.createMock(AssemblerConfigurationSource.class);
     }
 
     @Override
-    public void tearDown() throws IOException
+    public void tearDown()
+        throws IOException
     {
         fileManager.cleanUp();
     }
 
-    public void testTemporaryRootDirectoryNotExist() throws IOException, AssemblyFormattingException
+    public void testTemporaryRootDirectoryNotExist()
+        throws IOException, AssemblyFormattingException
     {
         final File basedir = fileManager.createTempDir();
         final File tempRoot = new File( basedir, "tempdir" );
-        configSource.getTemporaryRootDirectory();
-        configSourceControl.setReturnValue( tempRoot );
+        expect( configSource.getTemporaryRootDirectory()).andReturn( tempRoot );
 
         final File file = fileManager.createFile( basedir, "one.txt", "This is a\ntest." );
 
@@ -85,12 +86,12 @@
         mockManager.verifyAll();
     }
 
-    public void testShouldNotTransformOneFile() throws IOException, AssemblyFormattingException
+    public void testShouldNotTransformOneFile()
+        throws IOException, AssemblyFormattingException
     {
         final File basedir = fileManager.createTempDir();
 
-        configSource.getTemporaryRootDirectory();
-        configSourceControl.setReturnValue( basedir );
+        expect( configSource.getTemporaryRootDirectory()).andReturn( basedir );
 
         // Model model = new Model();
         // model.setArtifactId( "artifact" );
@@ -113,12 +114,12 @@
         mockManager.verifyAll();
     }
 
-    public void testShouldConvertCRLFLineEndingsInFile() throws IOException, AssemblyFormattingException
+    public void testShouldConvertCRLFLineEndingsInFile()
+        throws IOException, AssemblyFormattingException
     {
         final File basedir = fileManager.createTempDir();
 
-        configSource.getTemporaryRootDirectory();
-        configSourceControl.setReturnValue( basedir );
+        expect( configSource.getTemporaryRootDirectory()).andReturn( basedir );
 
         final File file = fileManager.createFile( basedir, "one.txt", "This is a\ntest." );
 
@@ -131,12 +132,12 @@
         mockManager.verifyAll();
     }
 
-    public void testShouldConvertLFLineEndingsInFile() throws IOException, AssemblyFormattingException
+    public void testShouldConvertLFLineEndingsInFile()
+        throws IOException, AssemblyFormattingException
     {
         final File basedir = fileManager.createTempDir();
 
-        configSource.getTemporaryRootDirectory();
-        configSourceControl.setReturnValue( basedir );
+        expect( configSource.getTemporaryRootDirectory()).andReturn( basedir );
 
         final File file = fileManager.createFile( basedir, "one.txt", "This is a\r\ntest." );
 
@@ -149,7 +150,8 @@
         mockManager.verifyAll();
     }
 
-    public void testShouldFilterProjectExpressionInFile() throws Exception
+    public void testShouldFilterProjectExpressionInFile()
+        throws Exception
     {
         final File basedir = fileManager.createTempDir();
 
@@ -167,7 +169,8 @@
         mockManager.verifyAll();
     }
 
-    public void testShouldFilterExpressionInPropertiesFileWithWindowsEscapes() throws Exception
+    public void testShouldFilterExpressionInPropertiesFileWithWindowsEscapes()
+        throws Exception
     {
 
         final File sourceDir = fileManager.createTempDir();
@@ -178,7 +181,7 @@
         build.setOutputDirectory( "C:\\out\\deeper" );
         project.setBuild( build );
 
-        enableBasicFilteringConfiguration( project, sourceDir );
+        enableBasicFilteringConfiguration( project, sourceDir, null );
 
         final File file = fileManager.createFile( sourceDir, "one.properties", "out=${project.build.outputDirectory}" );
 
@@ -192,7 +195,8 @@
         mockManager.verifyAll();
     }
 
-    public void testShouldFilterExpressionInPropertiesFileWithoutWindowsEscapes() throws Exception
+    public void testShouldFilterExpressionInPropertiesFileWithoutWindowsEscapes()
+        throws Exception
     {
 
         final File sourceDir = fileManager.createTempDir();
@@ -201,7 +205,7 @@
         build.setOutputDirectory( "C:\\out\\deeper" );
         project.setBuild( build );
 
-        enableBasicFilteringConfiguration( project, sourceDir );
+        enableBasicFilteringConfiguration( project, sourceDir, null );
 
         final File file =
             fileManager.createFile( sourceDir, "one.txt", "project.basedirA=${project.build.outputDirectory}" );
@@ -215,7 +219,8 @@
         mockManager.verifyAll();
     }
 
-    public void testShouldFilterExpressionFromFiltersFileInFile() throws Exception
+    public void testShouldFilterExpressionFromFiltersFileInFile()
+        throws Exception
     {
         final File basedir = fileManager.createTempDir();
 
@@ -235,7 +240,8 @@
         mockManager.verifyAll();
     }
 
-    public void testShouldFilterExpressionFromFiltersFileInPropertiesFileWithoutWindowsEscapes() throws Exception
+    public void testShouldFilterExpressionFromFiltersFileInPropertiesFileWithoutWindowsEscapes()
+        throws Exception
     {
         final File basedir = fileManager.createTempDir();
 
@@ -254,7 +260,8 @@
         mockManager.verifyAll();
     }
 
-    public void testShouldFilterExpressionFromFiltersFileInNonPropertiesFileWithoutWindowsEscapes() throws Exception
+    public void testShouldFilterExpressionFromFiltersFileInNonPropertiesFileWithoutWindowsEscapes()
+        throws Exception
     {
         final File basedir = fileManager.createTempDir();
 
@@ -274,7 +281,8 @@
         mockManager.verifyAll();
     }
 
-    public void testShouldNotIgnoreFirstWordInDotNotationExpressions() throws Exception
+    public void testShouldNotIgnoreFirstWordInDotNotationExpressions()
+        throws Exception
     {
         final File basedir = fileManager.createTempDir();
 
@@ -292,7 +300,8 @@
         mockManager.verifyAll();
     }
 
-    public void testShouldFilterExpressionsFromTwoFiltersFilesInFile() throws Exception
+    public void testShouldFilterExpressionsFromTwoFiltersFilesInFile()
+        throws Exception
     {
         final File basedir = fileManager.createTempDir();
 
@@ -318,7 +327,8 @@
         mockManager.verifyAll();
     }
 
-    public void testShouldOverrideOneFilterValueWithAnotherAndFilterFile() throws Exception
+    public void testShouldOverrideOneFilterValueWithAnotherAndFilterFile()
+        throws Exception
     {
         final File basedir = fileManager.createTempDir();
 
@@ -342,7 +352,8 @@
         mockManager.verifyAll();
     }
 
-    public void testShouldOverrideProjectValueWithFilterValueAndFilterFile() throws Exception
+    public void testShouldOverrideProjectValueWithFilterValueAndFilterFile()
+        throws Exception
     {
         final File basedir = fileManager.createTempDir();
 
@@ -365,6 +376,121 @@
         mockManager.verifyAll();
     }
 
+    public void testShouldCombineProjectValueWithFilterValueAndFilterFile()
+        throws Exception
+    {
+        final File basedir = fileManager.createTempDir();
+
+        final File buildFilterProps =
+            fileManager.createFile( basedir, "build-filter.properties", "common=build\r\nbuild.test=build\r\n" );
+        final File configFilterProps =
+            fileManager.createFile( basedir, "config-filter.properties", "common=config\r\nconfig.test=config\r\n" );
+
+        final List<String> buildFilters = new ArrayList<String>();
+        buildFilters.add( buildFilterProps.getCanonicalPath() );
+
+        final List<String> configFilters = new ArrayList<String>();
+        configFilters.add( configFilterProps.getCanonicalPath() );
+
+        enableFilteringConfiguration( basedir, buildFilters, configFilters, true );
+
+        final File file =
+            fileManager.createFile( basedir, "one.txt",
+                                    "filtered common=${common} build.test=${build.test} config.test=${config.test}." );
+
+        mockManager.replayAll();
+
+        final File result = new FileFormatter( configSource, logger ).format( file, true, null, "UTF-8" );
+
+        assertEquals( "filtered common=build build.test=build config.test=config.",
+                      fileManager.getFileContents( result ) );
+
+        mockManager.verifyAll();
+    }
+
+    public void testShouldIgnoreProjectValueWithFilterValueAndFilterFile()
+        throws Exception
+    {
+        final File basedir = fileManager.createTempDir();
+
+        final File buildFilterProps =
+            fileManager.createFile( basedir, "build-filter.properties", "common=build\r\nbuild.test=build\r\n" );
+        final File configFilterProps =
+            fileManager.createFile( basedir, "config-filter.properties", "common=config\r\nconfig.test=config\r\n" );
+
+        final List<String> buildFilters = new ArrayList<String>();
+        buildFilters.add( buildFilterProps.getCanonicalPath() );
+
+        final List<String> configFilters = new ArrayList<String>();
+        configFilters.add( configFilterProps.getCanonicalPath() );
+
+        enableFilteringConfiguration( basedir, buildFilters, configFilters, false );
+
+        final File file =
+            fileManager.createFile( basedir, "config.txt",
+                                    "filtered common=${common} build.test=${build.test} config.test=${config.test}." );
+
+        mockManager.replayAll();
+
+        final File result = new FileFormatter( configSource, logger ).format( file, true, null, "UTF-8" );
+
+        assertEquals( "filtered common=config build.test=${build.test} config.test=config.",
+                      fileManager.getFileContents( result ) );
+
+        mockManager.verifyAll();
+    }
+
+    public void testShouldFilterExpressionFromFiltersFileInFileAddCustomDelimiters()
+        throws Exception
+    {
+        final File basedir = fileManager.createTempDir();
+
+        final File filterProps = fileManager.createFile( basedir, "filter.properties", "property=Test" );
+
+        final List<String> delimiters = Collections.unmodifiableList( Arrays.asList( "${*}", "@", "#", "(*)" ) );
+
+        enableBasicFilteringConfiguration( basedir, Collections.singletonList( filterProps.getCanonicalPath() ),
+                                           delimiters );
+
+        final File file =
+            fileManager.createFile( basedir, "one.txt",
+                                    "This is a test for project: ${property} @property@ #property# (property)." );
+
+        mockManager.replayAll();
+
+        final File result = new FileFormatter( configSource, logger ).format( file, true, null, "UTF-8" );
+
+        assertEquals( "This is a test for project: Test Test Test Test.", fileManager.getFileContents( result ) );
+
+        mockManager.verifyAll();
+    }
+
+    public void testShouldFilterExpressionFromFiltersFileInFileCustomDelimiters()
+        throws Exception
+    {
+        final File basedir = fileManager.createTempDir();
+
+        final File filterProps = fileManager.createFile( basedir, "filter.properties", "property=Test" );
+
+        final List<String> delimiters = Collections.unmodifiableList( Arrays.asList( "#", "(*)" ) );
+
+        enableBasicFilteringConfiguration( basedir, Collections.singletonList( filterProps.getCanonicalPath() ),
+                                           delimiters );
+
+        final File file =
+            fileManager.createFile( basedir, "one.txt",
+                                    "This is a test for project: ${property} @property@ #property# (property)." );
+
+        mockManager.replayAll();
+
+        final File result = new FileFormatter( configSource, logger ).format( file, true, null, "UTF-8" );
+
+        assertEquals( "This is a test for project: ${property} @property@ Test Test.",
+                      fileManager.getFileContents( result ) );
+
+        mockManager.verifyAll();
+    }
+
     private MavenProject createBasicMavenProject()
     {
         final Model model = new Model();
@@ -375,38 +501,72 @@
         return new MavenProject( model );
     }
 
-    private void enableBasicFilteringConfiguration( final MavenProject project, final File basedir ) throws Exception
+    private void enableBasicFilteringConfiguration( final MavenProject project, final File basedir, final List<String> delimiters )
+        throws Exception
     {
-        configSource.getTemporaryRootDirectory();
-        configSourceControl.setReturnValue( basedir );
 
-        configSource.getEscapeString();
-        configSourceControl.setReturnValue( null, MockControl.ONE_OR_MORE );
+        enableFilteringConfiguration( project, basedir, delimiters, Collections.<String> emptyList(), true );
 
-        configSource.getProject();
-        configSourceControl.setReturnValue( project, MockControl.ONE_OR_MORE );
-
-        configSource.getMavenFileFilter();
-        configSourceControl.setReturnValue( lookup( "org.apache.maven.shared.filtering.MavenFileFilter" ) );
-
-        configSource.getMavenSession();
-        configSourceControl.setReturnValue( null );
-
-        configSource.getFilters();
-        configSourceControl.setReturnValue( Collections.EMPTY_LIST );
     }
 
-    private void enableBasicFilteringConfiguration( final File basedir, final List<String> filterFilenames )
+    private void enableFilteringConfiguration( final MavenProject project, final File basedir, final List<String> delimiters,
+                                               final List<String> filters, final boolean includeProjectBuildFilters )
+        throws Exception
+    {
+        expect( configSource.getTemporaryRootDirectory()).andReturn( basedir ).atLeastOnce();
+        expect( configSource.getEscapeString()).andReturn( null ).atLeastOnce();
+
+        expect( configSource.getProject()).andReturn( project).atLeastOnce();
+
+        expect( configSource.getMavenFileFilter()).andReturn(
+            (MavenFileFilter) lookup( "org.apache.maven.shared.filtering.MavenFileFilter" ) );
+
+        expect( configSource.getMavenSession()).andReturn( null );
+
+        expect( configSource.getFilters()).andReturn( filters );
+
+        expect( configSource.isIncludeProjectBuildFilters()).andReturn( includeProjectBuildFilters );
+
+        expect( configSource.getDelimiters()).andReturn( delimiters );
+
+    }
+
+    private void enableBasicFilteringConfiguration( final File basedir, final List<String> buildFilterFilenames )
         throws Exception
     {
         final MavenProject project = createBasicMavenProject();
-        if ( filterFilenames != null )
+        if ( buildFilterFilenames != null )
         {
-            project.getBuild()
-                   .setFilters( filterFilenames );
+            project.getBuild().setFilters( buildFilterFilenames );
         }
 
-        enableBasicFilteringConfiguration( project, basedir );
+        enableBasicFilteringConfiguration( project, basedir, null );
     }
 
+    private void enableFilteringConfiguration( final File basedir, final List<String> buildFilterFilenames,
+                                               final List<String> configFilterFilenames,
+                                               boolean includeProjectBuildFilters )
+        throws Exception
+    {
+        final MavenProject project = createBasicMavenProject();
+        if ( buildFilterFilenames != null )
+        {
+            project.getBuild().setFilters( buildFilterFilenames );
+        }
+
+        enableFilteringConfiguration( project, basedir, null, configFilterFilenames, includeProjectBuildFilters );
+    }
+
+    private void enableBasicFilteringConfiguration( final File basedir, final List<String> buildFilterFilenames, final List<String> delimiters )
+        throws Exception
+    {
+
+        final MavenProject project = createBasicMavenProject();
+        if ( buildFilterFilenames != null )
+        {
+            project.getBuild().setFilters( buildFilterFilenames );
+        }
+
+        enableBasicFilteringConfiguration( project, basedir, delimiters );
+    }
 }
diff --git a/src/test/java/org/apache/maven/plugin/assembly/format/FileSetFormatterTest.java b/src/test/java/org/apache/maven/plugin/assembly/format/FileSetFormatterTest.java
deleted file mode 100644
index 9e75ad4..0000000
--- a/src/test/java/org/apache/maven/plugin/assembly/format/FileSetFormatterTest.java
+++ /dev/null
@@ -1,364 +0,0 @@
-package org.apache.maven.plugin.assembly.format;
-
-/*
- * 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.
- */
-
-import java.io.File;
-import java.io.IOException;
-import java.util.Collections;
-import java.util.List;
-
-import org.apache.maven.model.Model;
-import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
-import org.apache.maven.plugin.assembly.model.FileSet;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
-import org.apache.maven.plugin.assembly.testutils.TestFileManager;
-import org.apache.maven.plugin.assembly.utils.AssemblyFileUtils;
-import org.apache.maven.project.MavenProject;
-import org.codehaus.plexus.PlexusTestCase;
-import org.codehaus.plexus.logging.Logger;
-import org.codehaus.plexus.logging.console.ConsoleLogger;
-import org.codehaus.plexus.util.FileUtils;
-import org.easymock.MockControl;
-
-public class FileSetFormatterTest
-    extends PlexusTestCase
-{
-
-    private MockManager mockManager;
-
-    private TestFileManager fileManager;
-
-    private Logger logger;
-
-    private AssemblerConfigurationSource configSource;
-
-    private MockControl configSourceControl;
-
-    @Override
-    public void setUp() throws Exception
-    {
-        super.setUp();
-
-        mockManager = new MockManager();
-
-        fileManager = new TestFileManager( "fileSetFormatter-test.", "" );
-
-        logger = new ConsoleLogger( Logger.LEVEL_DEBUG, "test" );
-
-        configSourceControl = MockControl.createControl( AssemblerConfigurationSource.class );
-        mockManager.add( configSourceControl );
-
-        configSource = (AssemblerConfigurationSource) configSourceControl.getMock();
-    }
-
-    @Override
-    public void tearDown() throws IOException
-    {
-        fileManager.cleanUp();
-    }
-
-    public void testShouldReturnOriginalUnalteredDirectoryWhenLineEndingIsNull()
-        throws AssemblyFormattingException, IOException
-    {
-        final FileSet fs = new FileSet();
-
-        final FileSetFormatter formatter = new FileSetFormatter( configSource, logger );
-
-        final File dir = fileManager.createTempDir();
-
-        final File result = formatter.formatFileSetForAssembly( dir, fs );
-
-        assertEquals( dir, result );
-    }
-
-    public void testShouldReturnOriginalUnalteredDirectoryWhenLineEndingIsKeep()
-        throws AssemblyFormattingException, IOException
-    {
-        final FileSet fs = new FileSet();
-        fs.setLineEnding( AssemblyFileUtils.LINE_ENDING_KEEP );
-
-        final FileSetFormatter formatter = new FileSetFormatter( configSource, logger );
-
-        final File dir = fileManager.createTempDir();
-
-        final File result = formatter.formatFileSetForAssembly( dir, fs );
-
-        assertEquals( dir, result );
-    }
-
-    public void testShouldReturnOriginalUnalteredDirectoryWhenIncludedFileSetIsEmpty()
-        throws AssemblyFormattingException, IOException
-    {
-        final File dir = fileManager.createTempDir();
-
-        final FileSet fs = new FileSet();
-
-        fs.setLineEnding( AssemblyFileUtils.LINE_ENDING_LF );
-        fs.setDirectory( dir.getCanonicalPath() );
-        fs.addExclude( "**/*" );
-
-        final FileSetFormatter formatter = new FileSetFormatter( configSource, logger );
-
-        final File result = formatter.formatFileSetForAssembly( dir, fs );
-
-        assertEquals( dir, result );
-    }
-
-    public void testShouldConvertLineEndingsOnTwoFiles() throws AssemblyFormattingException, IOException
-    {
-        final File dir = fileManager.createTempDir();
-
-        final String filename1 = "one.txt";
-        final String filename2 = "two.txt";
-
-        fileManager.createFile( dir, filename1, "Hello\nThis is a test." );
-        fileManager.createFile( dir, filename2, "Hello\nThis is also a test." );
-
-        final FileSet fs = new FileSet();
-
-        fs.setLineEnding( AssemblyFileUtils.LINE_ENDING_CRLF );
-        fs.setDirectory( dir.getCanonicalPath() );
-        fs.addInclude( "**/*.txt" );
-
-        final FileSetFormatter formatter = new FileSetFormatter( configSource, logger );
-
-        configSource.getTemporaryRootDirectory();
-        configSourceControl.setReturnValue( dir );
-
-        configSource.getEncoding();
-        configSourceControl.setReturnValue( "UTF-8", MockControl.ONE_OR_MORE );
-
-        mockManager.replayAll();
-        
-        final File result = formatter.formatFileSetForAssembly( dir, fs );
-
-        assertFalse( dir.equals( result ) );
-
-        try
-        {
-            fileManager.assertFileContents( result, filename1, "Hello\r\nThis is a test." );
-            fileManager.assertFileContents( result, filename2, "Hello\r\nThis is also a test." );
-        }
-        finally
-        {
-            FileUtils.deleteDirectory( result );
-        }
-    }
-
-    public void testShouldConvertLineEndingsOnOneFileWithAnotherExplicitlyExcluded()
-        throws AssemblyFormattingException, IOException
-    {
-        final File dir = fileManager.createTempDir();
-
-        final String filename1 = "one.txt";
-        final String filename2 = "two.txt";
-
-        fileManager.createFile( dir, filename1, "Hello\nThis is a test." );
-        fileManager.createFile( dir, filename2, "Hello\nThis is also a test." );
-
-        final FileSet fs = new FileSet();
-
-        fs.setLineEnding( AssemblyFileUtils.LINE_ENDING_CRLF );
-        fs.setDirectory( dir.getCanonicalPath() );
-        fs.addExclude( "**/two.txt" );
-
-        final FileSetFormatter formatter = new FileSetFormatter( configSource, logger );
-
-        configSource.getTemporaryRootDirectory();
-        configSourceControl.setReturnValue( dir );
-
-        configSource.getEncoding();
-        configSourceControl.setReturnValue( "UTF-8", MockControl.ONE_OR_MORE );
-
-        mockManager.replayAll();
-        
-        final File result = formatter.formatFileSetForAssembly( dir, fs );
-
-        assertFalse( dir.equals( result ) );
-
-        try
-        {
-            fileManager.assertFileContents( result, filename1, "Hello\r\nThis is a test." );
-            fileManager.assertFileExistence( result, filename2, false );
-        }
-        finally
-        {
-            FileUtils.deleteDirectory( result );
-        }
-    }
-
-    public void testShouldConvertLineEndingsOnOneExplicitlyIncludedFile()
-        throws AssemblyFormattingException, IOException
-    {
-        final File dir = fileManager.createTempDir();
-
-        final String filename1 = "one.txt";
-        final String filename2 = "two.txt";
-
-        fileManager.createFile( dir, filename1, "Hello\nThis is a test." );
-        fileManager.createFile( dir, filename2, "Hello\nThis is also a test." );
-
-        final FileSet fs = new FileSet();
-
-        fs.setLineEnding( AssemblyFileUtils.LINE_ENDING_CRLF );
-        fs.setDirectory( dir.getCanonicalPath() );
-        fs.addInclude( "**/one.txt" );
-
-        final FileSetFormatter formatter = new FileSetFormatter( configSource, logger );
-
-        configSource.getTemporaryRootDirectory();
-        configSourceControl.setReturnValue( dir );
-
-        configSource.getEncoding();
-        configSourceControl.setReturnValue( "UTF-8", MockControl.ONE_OR_MORE );
-
-        mockManager.replayAll();
-        
-        final File result = formatter.formatFileSetForAssembly( dir, fs );
-
-        assertFalse( dir.equals( result ) );
-        try
-        {
-            fileManager.assertFileContents( result, filename1, "Hello\r\nThis is a test." );
-            fileManager.assertFileExistence( result, filename2, false );
-        }
-        finally
-        {
-            FileUtils.deleteDirectory( result );
-        }
-    }
-
-    public void testShouldConvertLineEndingsOnOneFileAndIgnoreFileWithinDefaultExcludedDir()
-        throws AssemblyFormattingException, IOException
-    {
-        final File dir = fileManager.createTempDir();
-
-        final String filename1 = "one.txt";
-        final String filename2 = "CVS/two.txt";
-
-        fileManager.createFile( dir, filename1, "Hello\nThis is a test." );
-        fileManager.createFile( dir, filename2, "Hello\nThis is also a test." );
-
-        final FileSet fs = new FileSet();
-
-        fs.setLineEnding( AssemblyFileUtils.LINE_ENDING_CRLF );
-        fs.setDirectory( dir.getCanonicalPath() );
-
-        final FileSetFormatter formatter = new FileSetFormatter( configSource, logger );
-
-        configSource.getTemporaryRootDirectory();
-        configSourceControl.setReturnValue( dir );
-
-        configSource.getEncoding();
-        configSourceControl.setReturnValue( "UTF-8", MockControl.ONE_OR_MORE );
-
-        mockManager.replayAll();
-        
-        final File result = formatter.formatFileSetForAssembly( dir, fs );
-
-        assertFalse( dir.equals( result ) );
-
-        try
-        {
-            fileManager.assertFileContents( result, filename1, "Hello\r\nThis is a test." );
-            fileManager.assertFileExistence( result, filename2, false );
-        }
-        finally
-        {
-            FileUtils.deleteDirectory( result );
-        }
-    }
-
-    public void testShouldFilterSeveralFiles() throws Exception
-    {
-        final File basedir = fileManager.createTempDir();
-
-        final String filename1 = "one.txt";
-        final String filename2 = "two.txt";
-
-        // this file will be filtered with a project expression
-        fileManager.createFile( basedir, filename1, "This is the filtered artifactId: ${project.artifactId}." );
-        // this one fill be filtered with a filter file
-        fileManager.createFile( basedir, filename2, "This is the filtered 'foo' property: ${foo}." );
-        final File filterProps = fileManager.createFile( basedir, "filter.properties", "foo=bar" );
-
-        final FileSet fs = new FileSet();
-        fs.setFiltered( true );
-        fs.setDirectory( basedir.getCanonicalPath() );
-        fs.addInclude( "**/*.txt" );
-
-        enableBasicFilteringConfiguration( basedir, Collections.singletonList( filterProps.getCanonicalPath() ) );
-
-        mockManager.replayAll();
-
-        final FileSetFormatter formatter = new FileSetFormatter( configSource, logger );
-        final File result = formatter.formatFileSetForAssembly( basedir, fs );
-
-        assertFalse( result.equals( basedir ) );
-
-        try
-        {
-            fileManager.assertFileContents( result, filename1, "This is the filtered artifactId: artifact." );
-            fileManager.assertFileContents( result, filename2, "This is the filtered 'foo' property: bar." );
-
-            mockManager.verifyAll();
-        }
-        finally
-        {
-            FileUtils.deleteDirectory( result );
-        }
-    }
-
-    private void enableBasicFilteringConfiguration( final File basedir, final List<String> filterFilenames )
-        throws Exception
-    {
-        configSource.getTemporaryRootDirectory();
-        configSourceControl.setReturnValue( basedir );
-
-        final Model model = new Model();
-        model.setArtifactId( "artifact" );
-        model.setGroupId( "group" );
-        model.setVersion( "version" );
-
-        final MavenProject project = new MavenProject( model );
-        project.getBuild()
-               .setFilters( filterFilenames );
-
-        configSource.getProject();
-        configSourceControl.setReturnValue( project, MockControl.ONE_OR_MORE );
-
-        configSource.getMavenFileFilter();
-        configSourceControl.setReturnValue( lookup( "org.apache.maven.shared.filtering.MavenFileFilter" ),
-                                            MockControl.ONE_OR_MORE );
-
-        configSource.getMavenSession();
-        configSourceControl.setReturnValue( null, MockControl.ONE_OR_MORE );
-
-        configSource.getFilters();
-        configSourceControl.setReturnValue( Collections.EMPTY_LIST, MockControl.ONE_OR_MORE );
-
-        configSource.getEncoding();
-        configSourceControl.setReturnValue( "UTF-8", MockControl.ONE_OR_MORE );
-
-        configSource.getEscapeString();
-        configSourceControl.setReturnValue( null, MockControl.ONE_OR_MORE );
-    }
-
-}
diff --git a/src/test/java/org/apache/maven/plugin/assembly/interpolation/AssemblyExpressionEvaluatorTest.java b/src/test/java/org/apache/maven/plugin/assembly/interpolation/AssemblyExpressionEvaluatorTest.java
index 4fd30af..3bb3841 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/interpolation/AssemblyExpressionEvaluatorTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/interpolation/AssemblyExpressionEvaluatorTest.java
@@ -19,42 +19,28 @@
  * under the License.
  */
 
-import java.io.IOException;
-import java.util.Properties;
-
 import junit.framework.TestCase;
-
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.model.Build;
 import org.apache.maven.model.Model;
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
 import org.apache.maven.plugin.assembly.testutils.ConfigSourceStub;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
-import org.codehaus.plexus.logging.Logger;
-import org.codehaus.plexus.logging.console.ConsoleLogger;
-import org.easymock.MockControl;
-import org.easymock.classextension.MockClassControl;
+import org.easymock.classextension.EasyMockSupport;
+import org.easymock.classextension.IMocksControl;
+
+import java.util.Properties;
+
+import static org.easymock.EasyMock.expect;
 
 public class AssemblyExpressionEvaluatorTest
     extends TestCase
 {
 
-    private AssemblyInterpolator interpolator;
-
     private final ConfigSourceStub configSourceStub = new ConfigSourceStub();
 
-    @Override
-    public void setUp()
-        throws IOException
-    {
-        interpolator = new AssemblyInterpolator();
-
-        interpolator.enableLogging( new ConsoleLogger( Logger.LEVEL_DEBUG, "test" ) );
-    }
-
     public void testShouldResolveModelGroupId()
         throws ExpressionEvaluationException
     {
@@ -106,42 +92,26 @@
 
         model.setProperties( props );
 
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
-        final MockControl sessionControl = MockClassControl.createControl( MavenSession.class );
-        final MavenSession session = (MavenSession) sessionControl.getMock();
-
-        mm.add( sessionControl );
+        MavenSession session = mm.createControl().createMock( MavenSession.class );
 
         final Properties execProps = new Properties();
         execProps.setProperty( "groupId", "still.another.id" );
 
-        session.getExecutionProperties();
-        sessionControl.setReturnValue( execProps, MockControl.ZERO_OR_MORE );
+        expect( session.getExecutionProperties()).andReturn( execProps ).anyTimes();
+        expect( session.getUserProperties()).andReturn( new Properties() ).anyTimes();
 
-        session.getUserProperties();
-        sessionControl.setReturnValue( new Properties(), MockControl.ZERO_OR_MORE );
+        AssemblerConfigurationSource cs = mm.createControl().createMock( AssemblerConfigurationSource.class );
 
-        final MockControl csControl = MockControl.createControl( AssemblerConfigurationSource.class );
-        final AssemblerConfigurationSource cs = (AssemblerConfigurationSource) csControl.getMock();
+        expect( cs.getMavenSession()).andReturn( session );
+        expect( cs.getProject() ).andReturn( new MavenProject( model ) );
 
-        mm.add( csControl );
+        final IMocksControl lrCtl = mm.createControl();
+        final ArtifactRepository lr = lrCtl.createMock( ArtifactRepository.class );
 
-        cs.getMavenSession();
-        csControl.setReturnValue( session, MockControl.ZERO_OR_MORE );
-
-        cs.getProject();
-        csControl.setReturnValue( new MavenProject( model ), MockControl.ZERO_OR_MORE );
-
-        final MockControl lrCtl = MockControl.createControl( ArtifactRepository.class );
-        final ArtifactRepository lr = (ArtifactRepository) lrCtl.getMock();
-        mm.add( lrCtl );
-
-        lr.getBasedir();
-        lrCtl.setReturnValue( "/path/to/local/repo", MockControl.ZERO_OR_MORE );
-
-        cs.getLocalRepository();
-        csControl.setReturnValue( lr, MockControl.ZERO_OR_MORE );
+        expect( lr.getBasedir()).andReturn( "/path/to/local/repo" ).anyTimes();
+        expect( cs.getLocalRepository()).andReturn( lr ).anyTimes();
 
         mm.replayAll();
 
@@ -150,7 +120,6 @@
         assertEquals( "assembly.still.another.id", result );
 
         mm.verifyAll();
-        mm.clear();
     }
 
     public void testShouldReturnUnchangedInputForUnresolvedExpression()
diff --git a/src/test/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolatorTest.java b/src/test/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolatorTest.java
index d454f51..33383a0 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolatorTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/interpolation/AssemblyInterpolatorTest.java
@@ -33,12 +33,13 @@
 import org.apache.maven.plugin.assembly.model.Assembly;
 import org.apache.maven.plugin.assembly.model.DependencySet;
 import org.apache.maven.plugin.assembly.testutils.ConfigSourceStub;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.logging.Logger;
 import org.codehaus.plexus.logging.console.ConsoleLogger;
 import org.easymock.MockControl;
-import org.easymock.classextension.MockClassControl;
+import org.easymock.classextension.EasyMockSupport;
+
+import static org.easymock.EasyMock.expect;
 
 public class AssemblyInterpolatorTest
     extends TestCase
@@ -176,39 +177,27 @@
 
         assembly.setId( "assembly.${groupId}" );
 
-        final MockManager mm = new MockManager();
+        final EasyMockSupport mm = new EasyMockSupport();
 
-        final MockControl sessionControl = MockClassControl.createControl( MavenSession.class );
-        final MavenSession session = (MavenSession) sessionControl.getMock();
-
-        mm.add( sessionControl );
+        final MavenSession session = mm.createMock( MavenSession.class );
 
         final Properties execProps = new Properties();
         execProps.setProperty( "groupId", "still.another.id" );
 
-        session.getExecutionProperties();
-        sessionControl.setReturnValue( execProps, MockControl.ZERO_OR_MORE );
+        expect( session.getExecutionProperties()).andReturn( execProps ).anyTimes();
 
-        session.getUserProperties();
-        sessionControl.setReturnValue( new Properties(), MockControl.ZERO_OR_MORE );
+        expect( session.getUserProperties()).andReturn(  new Properties()).anyTimes();
 
-        final MockControl csControl = MockControl.createControl( AssemblerConfigurationSource.class );
-        final AssemblerConfigurationSource cs = (AssemblerConfigurationSource) csControl.getMock();
-
-        mm.add( csControl );
+        final AssemblerConfigurationSource cs = mm.createMock( AssemblerConfigurationSource.class );
 
         final MockControl lrCtl = MockControl.createControl( ArtifactRepository.class );
-        final ArtifactRepository lr = (ArtifactRepository) lrCtl.getMock();
-        mm.add( lrCtl );
+        final ArtifactRepository lr =  mm.createMock( ArtifactRepository.class );
 
-        lr.getBasedir();
-        lrCtl.setReturnValue( "/path/to/local/repo", MockControl.ZERO_OR_MORE );
+        expect( lr.getBasedir()).andReturn(  "/path/to/local/repo").anyTimes();
 
-        cs.getLocalRepository();
-        csControl.setReturnValue( lr, MockControl.ZERO_OR_MORE );
+        expect(cs.getLocalRepository()).andReturn( lr ).anyTimes();
 
-        cs.getMavenSession();
-        csControl.setReturnValue( session, MockControl.ZERO_OR_MORE );
+        expect( cs.getMavenSession()).andReturn( session ).anyTimes();
 
         mm.replayAll();
 
@@ -217,7 +206,7 @@
         assertEquals( "assembly.still.another.id", result.getId() );
 
         mm.verifyAll();
-        mm.clear();
+        mm.resetAll();
     }
 
     public void testShouldNotTouchUnresolvedExpression()
diff --git a/src/test/java/org/apache/maven/plugin/assembly/io/DefaultAssemblyReaderTest.java b/src/test/java/org/apache/maven/plugin/assembly/io/DefaultAssemblyReaderTest.java
index a1c04b4..c0f0499 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/io/DefaultAssemblyReaderTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/io/DefaultAssemblyReaderTest.java
@@ -19,20 +19,7 @@
  * under the License.
  */
 
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.OutputStreamWriter;
-import java.io.StringReader;
-import java.io.StringWriter;
-import java.io.Writer;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
 import junit.framework.TestCase;
-
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.model.Model;
@@ -47,11 +34,24 @@
 import org.apache.maven.plugin.assembly.model.Repository;
 import org.apache.maven.plugin.assembly.model.io.xpp3.AssemblyXpp3Writer;
 import org.apache.maven.plugin.assembly.model.io.xpp3.ComponentXpp3Writer;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
 import org.apache.maven.plugin.assembly.testutils.TestFileManager;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.util.IOUtil;
-import org.easymock.MockControl;
+import org.easymock.classextension.EasyMockSupport;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.OutputStreamWriter;
+import java.io.StringReader;
+import java.io.StringWriter;
+import java.io.Writer;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+
+import static org.easymock.EasyMock.expect;
 
 public class DefaultAssemblyReaderTest
     extends TestCase
@@ -59,42 +59,28 @@
 
     private TestFileManager fileManager;
 
-    private MockManager mockManager;
+    private EasyMockSupport mockManager;
 
-    private MockControl configSourceControl;
 
     private AssemblerConfigurationSource configSource;
 
     private ArtifactRepository localRepo;
 
-    private MockControl localRepoControl;
 
     @Override
     public void setUp()
     {
         fileManager = new TestFileManager( "assembly-reader.test.", ".xml" );
-        mockManager = new MockManager();
+        mockManager = new EasyMockSupport();
 
-        configSourceControl = MockControl.createControl( AssemblerConfigurationSource.class );
-        mockManager.add( configSourceControl );
+        configSource = mockManager.createMock(AssemblerConfigurationSource.class);
 
-        configSource = (AssemblerConfigurationSource) configSourceControl.getMock();
+        localRepo = mockManager.createMock( ArtifactRepository.class );
 
-        localRepoControl = MockControl.createControl( ArtifactRepository.class );
-        localRepo = (ArtifactRepository) localRepoControl.getMock();
-        mockManager.add( localRepoControl );
-
-        localRepo.getBasedir();
-        localRepoControl.setReturnValue( "/path/to/local/repo", MockControl.ZERO_OR_MORE );
-
-        configSource.getLocalRepository();
-        configSourceControl.setReturnValue( localRepo, MockControl.ZERO_OR_MORE );
-
-        configSource.getRemoteRepositories();
-        configSourceControl.setReturnValue( Collections.EMPTY_LIST, MockControl.ZERO_OR_MORE );
-
-        configSource.getMavenSession();
-        configSourceControl.setReturnValue( null, MockControl.ZERO_OR_MORE );
+        expect(localRepo.getBasedir()).andReturn("/path/to/local/repo").anyTimes();
+        expect(configSource.getLocalRepository()).andReturn( localRepo ).anyTimes();
+        expect( configSource.getRemoteRepositories()).andReturn( Collections.<ArtifactRepository>emptyList()).anyTimes();
+        expect(configSource.getMavenSession()).andReturn( null).anyTimes();
     }
 
     @Override
@@ -110,8 +96,7 @@
         final File siteDir = File.createTempFile( "assembly-reader.", ".test" );
         siteDir.delete();
 
-        configSource.getSiteDirectory();
-        configSourceControl.setReturnValue( siteDir, MockControl.ZERO_OR_MORE );
+        expect( configSource.getSiteDirectory()).andReturn( siteDir ).anyTimes();
 
         final Assembly assembly = new Assembly();
 
@@ -136,8 +121,7 @@
     {
         final File siteDir = fileManager.createTempDir();
 
-        configSource.getSiteDirectory();
-        configSourceControl.setReturnValue( siteDir, MockControl.ZERO_OR_MORE );
+        expect( configSource.getSiteDirectory()).andReturn( siteDir ).anyTimes();
 
         final Assembly assembly = new Assembly();
 
@@ -502,13 +486,11 @@
 
         final File basedir = componentFile.getParentFile();
 
-        configSource.getBasedir();
-        configSourceControl.setReturnValue( basedir, MockControl.ZERO_OR_MORE );
+        expect( configSource.getBasedir()).andReturn( basedir ).anyTimes();
 
         final MavenProject project = new MavenProject();
 
-        configSource.getProject();
-        configSourceControl.setReturnValue( project, MockControl.ZERO_OR_MORE );
+        expect( configSource.getProject()).andReturn( project ).anyTimes();
 
         mockManager.replayAll();
 
@@ -541,8 +523,7 @@
 
         final File basedir = fileManager.createTempDir();
 
-        configSource.getBasedir();
-        configSourceControl.setReturnValue( basedir, MockControl.ZERO_OR_MORE );
+        expect( configSource.getBasedir()).andReturn( basedir ).anyTimes();
 
         final Model model = new Model();
         model.setGroupId( "group" );
@@ -551,11 +532,9 @@
 
         final MavenProject project = new MavenProject( model );
 
-        configSource.getProject();
-        configSourceControl.setReturnValue( project, MockControl.ZERO_OR_MORE );
+        expect( configSource.getProject()).andReturn( project ).anyTimes();
 
-        configSource.isSiteIncluded();
-        configSourceControl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+        expect( configSource.isSiteIncluded()).andReturn( false ).anyTimes();
 
         mockManager.replayAll();
 
@@ -583,13 +562,11 @@
 
         final File siteDir = fileManager.createTempDir();
 
-        configSource.getSiteDirectory();
-        configSourceControl.setReturnValue( siteDir, MockControl.ZERO_OR_MORE );
+        expect( configSource.getSiteDirectory()).andReturn( siteDir ).anyTimes();
 
         final File basedir = fileManager.createTempDir();
 
-        configSource.getBasedir();
-        configSourceControl.setReturnValue( basedir, MockControl.ZERO_OR_MORE );
+        expect( configSource.getBasedir()).andReturn( basedir ).anyTimes();
 
         final Model model = new Model();
         model.setGroupId( "group" );
@@ -598,11 +575,9 @@
 
         final MavenProject project = new MavenProject( model );
 
-        configSource.getProject();
-        configSourceControl.setReturnValue( project, MockControl.ZERO_OR_MORE );
+        expect(configSource.getProject()).andReturn( project ).anyTimes();
 
-        configSource.isSiteIncluded();
-        configSourceControl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+        expect( configSource.isSiteIncluded()).andReturn( false ).anyTimes();
 
         mockManager.replayAll();
 
@@ -635,13 +610,11 @@
 
         final File siteDir = fileManager.createTempDir();
 
-        configSource.getSiteDirectory();
-        configSourceControl.setReturnValue( siteDir, MockControl.ZERO_OR_MORE );
+        expect( configSource.getSiteDirectory()).andReturn( siteDir ).anyTimes();
 
         final File basedir = fileManager.createTempDir();
 
-        configSource.getBasedir();
-        configSourceControl.setReturnValue( basedir, MockControl.ZERO_OR_MORE );
+        expect( configSource.getBasedir()).andReturn( basedir ).anyTimes();
 
         final Model model = new Model();
         model.setGroupId( "group" );
@@ -650,11 +623,9 @@
 
         final MavenProject project = new MavenProject( model );
 
-        configSource.getProject();
-        configSourceControl.setReturnValue( project, MockControl.ZERO_OR_MORE );
+        expect( configSource.getProject()).andReturn( project ).anyTimes();
 
-        configSource.isSiteIncluded();
-        configSourceControl.setReturnValue( true, MockControl.ZERO_OR_MORE );
+        expect( configSource.isSiteIncluded()).andReturn( true ).anyTimes();
 
         mockManager.replayAll();
 
@@ -711,8 +682,7 @@
 
         final StringReader sr = new StringReader( sw.toString() );
 
-        configSource.getBasedir();
-        configSourceControl.setReturnValue( basedir, MockControl.ZERO_OR_MORE );
+        expect( configSource.getBasedir()).andReturn( basedir ).anyTimes();
 
         final Model model = new Model();
         model.setGroupId( "group" );
@@ -720,11 +690,9 @@
         model.setVersion( "version" );
 
         final MavenProject project = new MavenProject( model );
-        configSource.getProject();
-        configSourceControl.setReturnValue( project, MockControl.ZERO_OR_MORE );
+        expect( configSource.getProject()).andReturn( project ).anyTimes();
 
-        configSource.isSiteIncluded();
-        configSourceControl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+        expect( configSource.isSiteIncluded()).andReturn( false ).anyTimes();
 
         mockManager.replayAll();
 
@@ -781,8 +749,7 @@
 
         final StringReader sr = new StringReader( sw.toString() );
 
-        configSource.getBasedir();
-        configSourceControl.setReturnValue( basedir, MockControl.ONE_OR_MORE );
+        expect( configSource.getBasedir()).andReturn( basedir ).atLeastOnce();
 
         final Model model = new Model();
         model.setGroupId( "group" );
@@ -791,11 +758,9 @@
 
         final MavenProject project = new MavenProject( model );
 
-        configSource.getProject();
-        configSourceControl.setReturnValue( project, MockControl.ONE_OR_MORE );
+        expect( configSource.getProject()).andReturn( project ).atLeastOnce();
 
-        configSource.isSiteIncluded();
-        configSourceControl.setReturnValue( false );
+        expect( configSource.isSiteIncluded()).andReturn( false );
 
         mockManager.replayAll();
 
@@ -828,8 +793,7 @@
 
         final File basedir = fileManager.createTempDir();
 
-        configSource.getBasedir();
-        configSourceControl.setReturnValue( basedir, MockControl.ZERO_OR_MORE );
+        expect( configSource.getBasedir()).andReturn( basedir ).anyTimes();
 
         final Model model = new Model();
         model.setGroupId( "group" );
@@ -838,11 +802,9 @@
 
         final MavenProject project = new MavenProject( model );
 
-        configSource.getProject();
-        configSourceControl.setReturnValue( project, MockControl.ZERO_OR_MORE );
+        expect( configSource.getProject()).andReturn( project ).anyTimes();
 
-        configSource.isSiteIncluded();
-        configSourceControl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+        expect( configSource.isSiteIncluded()).andReturn( false ).anyTimes();
 
         mockManager.replayAll();
 
@@ -868,14 +830,11 @@
 
         final File basedir = assemblyFile.getParentFile();
 
-        configSource.getBasedir();
-        configSourceControl.setReturnValue( basedir, MockControl.ZERO_OR_MORE );
+        expect( configSource.getBasedir()).andReturn( basedir).anyTimes();
 
-        configSource.getProject();
-        configSourceControl.setReturnValue( new MavenProject( new Model() ), MockControl.ZERO_OR_MORE );
+        expect( configSource.getProject()).andReturn( new MavenProject( new Model() )).anyTimes();
 
-        configSource.isSiteIncluded();
-        configSourceControl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+        expect( configSource.isSiteIncluded()).andReturn( false ).anyTimes();
 
         Writer writer = null;
         try
@@ -902,17 +861,13 @@
     {
         final File basedir = fileManager.createTempDir();
 
-        configSource.getBasedir();
-        configSourceControl.setReturnValue( basedir, MockControl.ZERO_OR_MORE );
+        expect( configSource.getBasedir()).andReturn( basedir).anyTimes();
 
-        configSource.getProject();
-        configSourceControl.setReturnValue( new MavenProject( new Model() ), MockControl.ZERO_OR_MORE );
+        expect( configSource.getProject()).andReturn( new MavenProject( new Model() )).anyTimes();
 
-        configSource.isSiteIncluded();
-        configSourceControl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+        expect( configSource.isSiteIncluded()).andReturn( false ).anyTimes();
 
-        configSource.isIgnoreMissingDescriptor();
-        configSourceControl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+        expect( configSource.isIgnoreMissingDescriptor()).andReturn( false ).anyTimes();
 
         mockManager.replayAll();
 
@@ -1157,32 +1112,23 @@
                                                   final boolean ignoreMissing )
         throws AssemblyReadException, InvalidAssemblerConfigurationException
     {
-        configSource.getDescriptor();
-        configSourceControl.setReturnValue( descriptor );
+        expect( configSource.getDescriptor()).andReturn( descriptor );
 
-        configSource.getDescriptorId();
-        configSourceControl.setReturnValue( descriptorRef );
+        expect( configSource.getDescriptorId()).andReturn( descriptorRef );
 
-        configSource.getDescriptorReferences();
-        configSourceControl.setReturnValue( descriptorRefs );
+        expect( configSource.getDescriptorReferences()).andReturn( descriptorRefs );
 
-        configSource.getDescriptors();
-        configSourceControl.setReturnValue( descriptors );
+        expect( configSource.getDescriptors()).andReturn( descriptors );
 
-        configSource.getDescriptorSourceDirectory();
-        configSourceControl.setReturnValue( descriptorDir );
+        expect( configSource.getDescriptorSourceDirectory()).andReturn( descriptorDir );
 
-        configSource.getBasedir();
-        configSourceControl.setReturnValue( basedir, MockControl.ZERO_OR_MORE );
+        expect( configSource.getBasedir()).andReturn( basedir ).anyTimes();
 
-        configSource.getProject();
-        configSourceControl.setReturnValue( new MavenProject( new Model() ), MockControl.ZERO_OR_MORE );
+        expect( configSource.getProject()).andReturn( new MavenProject( new Model() )).anyTimes();
 
-        configSource.isSiteIncluded();
-        configSourceControl.setReturnValue( false, MockControl.ZERO_OR_MORE );
+        expect( configSource.isSiteIncluded()).andReturn( false ).anyTimes();
 
-        configSource.isIgnoreMissingDescriptor();
-        configSourceControl.setReturnValue( ignoreMissing, MockControl.ZERO_OR_MORE );
+        expect( configSource.isIgnoreMissingDescriptor()).andReturn(  ignoreMissing).anyTimes();
 
         mockManager.replayAll();
 
diff --git a/src/test/java/org/apache/maven/plugin/assembly/testutils/ConfigSourceStub.java b/src/test/java/org/apache/maven/plugin/assembly/testutils/ConfigSourceStub.java
index 836bc96..dcc9a99 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/testutils/ConfigSourceStub.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/testutils/ConfigSourceStub.java
@@ -28,6 +28,7 @@
 import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.shared.filtering.MavenFileFilter;
+import org.apache.maven.shared.filtering.MavenReaderFilter;
 
 public class ConfigSourceStub
     implements AssemblerConfigurationSource
@@ -82,6 +83,10 @@
         return null;
     }
 
+    public boolean isIncludeProjectBuildFilters() {
+    	return false;
+    }
+
     public String getFinalName()
     {
         return null;
@@ -167,11 +172,6 @@
         return false;
     }
 
-    public void setArchiverConfig( final String archiverConfig )
-    {
-        this.archiverConfig = archiverConfig;
-    }
-
     public String getArchiverConfig()
     {
         return archiverConfig;
@@ -182,6 +182,12 @@
         return null;
     }
 
+    public MavenReaderFilter getMavenReaderFilter()
+    {
+        return null;
+    }
+
+
     public void setProject( final MavenProject mavenProject )
     {
         project = mavenProject;
@@ -209,4 +215,9 @@
     public String getEscapeString() {
         return null;
     }
+
+	public List<String> getDelimiters() {
+		return null;
+	}
+
 }
diff --git a/src/test/java/org/apache/maven/plugin/assembly/testutils/MockManager.java b/src/test/java/org/apache/maven/plugin/assembly/testutils/MockManager.java
deleted file mode 100644
index faaf948..0000000
--- a/src/test/java/org/apache/maven/plugin/assembly/testutils/MockManager.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package org.apache.maven.plugin.assembly.testutils;
-
-/*
- * 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.
- */
-
-import java.util.HashSet;
-import java.util.Set;
-
-import junit.framework.AssertionFailedError;
-
-import org.easymock.MockControl;
-
-public class MockManager
-{
-
-    private final Set<MockControl> mockControls = new HashSet<MockControl>();
-
-    public void add( final MockControl control )
-    {
-        mockControls.add( control );
-    }
-
-    public void clear()
-    {
-        mockControls.clear();
-    }
-
-    public void replayAll()
-    {
-        for (final MockControl control : mockControls) {
-            control.replay();
-        }
-    }
-
-    public void verifyAll()
-    {
-        for (final MockControl control : mockControls) {
-            try {
-                control.verify();
-            } catch (final AssertionFailedError err) {
-                final String message =
-                        "MockControl: " + control + " of: " + control.getMock() + " failed.\n" + err.getMessage();
-                final AssertionFailedError e = new AssertionFailedError(message);
-                e.initCause(err);
-
-                throw e;
-            }
-        }
-    }
-
-}
diff --git a/src/test/java/org/apache/maven/plugin/assembly/testutils/TestFileManager.java b/src/test/java/org/apache/maven/plugin/assembly/testutils/TestFileManager.java
index 7e0c1c9..a31b2c3 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/testutils/TestFileManager.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/testutils/TestFileManager.java
@@ -19,6 +19,9 @@
  * under the License.
  */
 
+import org.codehaus.plexus.util.FileUtils;
+import org.codehaus.plexus.util.IOUtil;
+
 import java.io.File;
 import java.io.FileReader;
 import java.io.FileWriter;
@@ -27,11 +30,6 @@
 import java.util.Iterator;
 import java.util.List;
 
-import junit.framework.Assert;
-
-import org.codehaus.plexus.util.FileUtils;
-import org.codehaus.plexus.util.IOUtil;
-
 public class TestFileManager
 {
 
@@ -45,8 +43,6 @@
 
     private StackTraceElement callerInfo;
 
-    private Thread cleanupWarning;
-
     private boolean warnAboutCleanup = false;
 
     public TestFileManager( final String baseFilename, final String fileSuffix )
@@ -71,7 +67,7 @@
 
         };
 
-        cleanupWarning = new Thread( warning );
+        Thread cleanupWarning = new Thread( warning );
 
         Runtime.getRuntime()
                .addShutdownHook( cleanupWarning );
@@ -97,12 +93,13 @@
         {
             Thread.sleep( 20 );
         }
-        catch ( final InterruptedException e )
+        catch ( final InterruptedException ignore )
         {
         }
 
         final File dir = new File( TEMP_DIR_PATH, baseFilename + System.currentTimeMillis() );
 
+        //noinspection ResultOfMethodCallIgnored
         dir.mkdirs();
         markForDeletion( dir );
 
@@ -142,33 +139,10 @@
         warnAboutCleanup = false;
     }
 
-    public void assertFileExistence( final File dir, final String filename, final boolean shouldExist )
-    {
-        final File file = new File( dir, filename );
-
-        if ( shouldExist )
-        {
-            Assert.assertTrue( file.exists() );
-        }
-        else
-        {
-            Assert.assertFalse( file.exists() );
-        }
-    }
-
-    public void assertFileContents( final File dir, final String filename, final String contentsTest )
-        throws IOException
-    {
-        assertFileExistence( dir, filename, true );
-
-        final File file = new File( dir, filename );
-
-        Assert.assertEquals( contentsTest, getFileContents( file ) );
-    }
-
     /**
      * NOTE: the file content is written using platform encoding.
      */
+    @SuppressWarnings( "ResultOfMethodCallIgnored" )
     public File createFile( final File dir, final String filename, final String contents ) throws IOException
     {
         final File file = new File( dir, filename );
@@ -224,10 +198,4 @@
         super.finalize();
     }
 
-    public File createFile( final String filename, final String content ) throws IOException
-    {
-        final File dir = createTempDir();
-        return createFile( dir, filename, content );
-    }
-
 }
diff --git a/src/test/java/org/apache/maven/plugin/assembly/testutils/TestUtils.java b/src/test/java/org/apache/maven/plugin/assembly/testutils/TestUtils.java
deleted file mode 100644
index dde9409..0000000
--- a/src/test/java/org/apache/maven/plugin/assembly/testutils/TestUtils.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package org.apache.maven.plugin.assembly.testutils;
-
-/*
- * 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.
- */
-
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileReader;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.io.StringWriter;
-
-import org.codehaus.plexus.util.IOUtil;
-
-public final class TestUtils
-{
-
-    private TestUtils()
-    {
-    }
-
-    /**
-     * Write a text to a file using platform encoding.
-     */
-    public static void writeToFile( File file, String testStr )
-        throws IOException
-    {
-        FileWriter fw = null;
-        try
-        {
-            fw = new FileWriter( file ); // platform encoding
-            fw.write( testStr );
-        }
-        finally
-        {
-            IOUtil.close( fw );
-        }
-    }
-
-    /**
-     * Read file content using platform encoding and converting line endings to \\n.
-     */
-    public static String readFile( File file ) throws IOException
-    {
-        StringBuilder buffer = new StringBuilder();
-
-        BufferedReader reader = new BufferedReader( new FileReader( file ) ); // platform encoding
-
-        String line;
-
-        while( ( line = reader.readLine() ) != null )
-        {
-            if ( buffer.length() > 0 )
-            {
-                buffer.append( '\n' );
-            }
-
-            buffer.append( line );
-        }
-
-        return buffer.toString();
-    }
-
-    public static String toString( Throwable error )
-    {
-        StringWriter sw = new StringWriter();
-        PrintWriter pw = new PrintWriter( sw );
-
-        error.printStackTrace( pw );
-
-        return sw.toString();
-    }
-}
diff --git a/src/test/java/org/apache/maven/plugin/assembly/testutils/TrackingArchiverStub.java b/src/test/java/org/apache/maven/plugin/assembly/testutils/TrackingArchiverStub.java
index 8279a82..1d35b13 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/testutils/TrackingArchiverStub.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/testutils/TrackingArchiverStub.java
@@ -28,6 +28,7 @@
 
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
 import org.apache.maven.plugin.assembly.utils.TypeConversionUtils;
+import org.codehaus.plexus.archiver.ArchiveEntry;
 import org.codehaus.plexus.archiver.ArchivedFileSet;
 import org.codehaus.plexus.archiver.Archiver;
 import org.codehaus.plexus.archiver.ArchiverException;
@@ -38,6 +39,9 @@
 import org.codehaus.plexus.logging.Logger;
 import org.codehaus.plexus.logging.console.ConsoleLogger;
 import org.codehaus.plexus.util.StringUtils;
+import sun.reflect.generics.reflectiveObjects.NotImplementedException;
+
+import javax.annotation.Nonnull;
 
 public class TrackingArchiverStub
     implements Archiver
@@ -45,14 +49,10 @@
 
     private static final Logger logger = new ConsoleLogger( Logger.LEVEL_DEBUG, "test" );
 
-    public boolean forced;
-
-    public File destFile;
+    private File destFile;
 
     public final List<Addition> added = new ArrayList<Addition>();
 
-    public boolean created;
-
     private boolean useJvmChmod;
 
     private boolean ignorePermissions;
@@ -60,71 +60,83 @@
     public void createArchive()
         throws ArchiverException, IOException
     {
-        created = true;
     }
 
-    public void addDirectory( final File directory )
+    public void addDirectory( final @Nonnull File directory )
         throws ArchiverException
     {
         added.add( new Addition( directory, null, null, null, -1 ) );
     }
 
-    public void addDirectory( final File directory, final String prefix )
+    public void addDirectory( final @Nonnull File directory, final String prefix )
         throws ArchiverException
     {
         added.add( new Addition( directory, prefix, null, null, -1 ) );
     }
 
-    public void addDirectory( final File directory, final String[] includes, final String[] excludes )
+    public void addDirectory( final @Nonnull File directory, final String[] includes, final String[] excludes )
         throws ArchiverException
     {
         added.add( new Addition( directory, null, includes, excludes, -1 ) );
     }
 
-    public void addDirectory( final File directory, final String prefix, final String[] includes,
+    public void addDirectory( final @Nonnull File directory, final String prefix, final String[] includes,
                               final String[] excludes )
         throws ArchiverException
     {
         added.add( new Addition( directory, prefix, includes, excludes, -1 ) );
     }
 
-    public void addFileSet( final FileSet fileSet )
+    public void addFileSet( final @Nonnull FileSet fileSet )
         throws ArchiverException
     {
         added.add( new Addition( fileSet, null, null, null, -1 ) );
     }
 
-    public void addFile( final File inputFile, final String destFileName )
+    public void addFile( final @Nonnull File inputFile, final @Nonnull String destFileName )
         throws ArchiverException
     {
         added.add( new Addition( inputFile, destFileName, null, null, -1 ) );
     }
 
-    public void addFile( final File inputFile, final String destFileName, final int permissions )
+    public void addFile( final @Nonnull File inputFile, final @Nonnull String destFileName, final int permissions )
         throws ArchiverException
     {
         added.add( new Addition( inputFile, destFileName, null, null, permissions ) );
     }
 
-    public void addArchivedFileSet( final File archiveFile )
+    public void addArchivedFileSet( final @Nonnull File archiveFile )
         throws ArchiverException
     {
         added.add( new Addition( archiveFile, null, null, null, -1 ) );
     }
 
-    public void addArchivedFileSet( final File archiveFile, final String prefix )
+    public void addArchivedFileSet( final @Nonnull File archiveFile, final String prefix )
         throws ArchiverException
     {
         added.add( new Addition( archiveFile, prefix, null, null, -1 ) );
     }
 
+    public void addSymlink( String s, String s2 )
+        throws ArchiverException
+    {
+        added.add( new Addition( s, null, null, null, -1 ) );
+    }
+
+    public void addSymlink( String s, int i, String s2 )
+        throws ArchiverException
+    {
+        added.add( new Addition( s, null, null, null, -1 ) );
+
+    }
+
     public void addArchivedFileSet( final File archiveFile, final String[] includes, final String[] excludes )
         throws ArchiverException
     {
         added.add( new Addition( archiveFile, null, includes, excludes, -1 ) );
     }
 
-    public void addArchivedFileSet( final File archiveFile, final String prefix, final String[] includes,
+    public void addArchivedFileSet( final @Nonnull File archiveFile, final String prefix, final String[] includes,
                                     final String[] excludes )
         throws ArchiverException
     {
@@ -260,16 +272,18 @@
     {
     }
 
-    public ResourceIterator getResources()
+    public
+    @Nonnull
+    ResourceIterator getResources()
         throws ArchiverException
     {
-        return null;
+        throw new NotImplementedException();
     }
 
     @SuppressWarnings( "rawtypes" )
-    public Map getFiles()
+    public Map<String, ArchiveEntry> getFiles()
     {
-        return new HashMap();
+        return new HashMap<String, ArchiveEntry>();
     }
 
     public boolean isForced()
@@ -299,13 +313,18 @@
     {
         /**
          * {@inheritDoc}
-         * 
+         *
          * @see java.lang.Object#toString()
          */
         @Override
         public String toString()
         {
-            return "Addition (\n    resource= " + resource + "\n    directory= " + directory + "\n    destination= " + destination + "\n    permissions= " + permissions + "\n    includes= " + (includes == null ? "-none-" : StringUtils.join(includes, ", ")) + "\n    excludes= " + (excludes == null ? "-none-" : StringUtils.join(excludes, ", ")) + "\n)";
+            return "Addition (\n    resource= " + resource + "\n    directory= " + directory + "\n    destination= "
+                + destination + "\n    permissions= " + permissions + "\n    includes= " + ( includes == null
+                ? "-none-"
+                : StringUtils.join( includes, ", " ) ) + "\n    excludes= " + ( excludes == null
+                ? "-none-"
+                : StringUtils.join( excludes, ", " ) ) + "\n)";
         }
 
         public final Object resource;
diff --git a/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFileUtilsTest.java b/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFileUtilsTest.java
index 655abcb..87c7235 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFileUtilsTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFileUtilsTest.java
@@ -19,31 +19,25 @@
  * under the License.
  */
 
-import java.io.File;
-import java.io.FileReader;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.io.StringReader;
-import java.io.StringWriter;
-
 import junit.framework.TestCase;
-
 import org.apache.maven.plugin.assembly.archive.ArchiveExpansionException;
-import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
 import org.apache.maven.plugin.assembly.testutils.TestFileManager;
 import org.codehaus.plexus.archiver.ArchiverException;
 import org.codehaus.plexus.archiver.UnArchiver;
 import org.codehaus.plexus.archiver.manager.ArchiverManager;
 import org.codehaus.plexus.archiver.manager.NoSuchArchiverException;
-import org.codehaus.plexus.util.IOUtil;
-import org.easymock.MockControl;
+import org.easymock.classextension.EasyMockSupport;
+
+import java.io.File;
+import java.io.IOException;
+
+import static org.easymock.EasyMock.expect;
 
 public class AssemblyFileUtilsTest
     extends TestCase
 {
 
-    private TestFileManager fileManager = new TestFileManager( "file-utils.test.", "" );
+    private final TestFileManager fileManager = new TestFileManager( "file-utils.test.", "" );
 
     public void tearDown()
         throws IOException
@@ -54,25 +48,18 @@
     public void testUnpack_ShouldSetSourceAndDestinationAndCallExtract()
         throws IOException, ArchiveExpansionException, NoSuchArchiverException
     {
-        MockManager mockManager = new MockManager();
+        EasyMockSupport mockManager = new EasyMockSupport();
 
         File source = fileManager.createTempFile();
         File destDir = fileManager.createTempDir();
 
-        MockControl unarchiverCtl = MockControl.createControl( UnArchiver.class );
-        mockManager.add( unarchiverCtl );
+        UnArchiver unarchiver = mockManager.createMock( UnArchiver.class );
 
-        UnArchiver unarchiver = (UnArchiver) unarchiverCtl.getMock();
-
-        MockControl archiverManagerCtl = MockControl.createControl( ArchiverManager.class );
-        mockManager.add( archiverManagerCtl );
-
-        ArchiverManager archiverManager = (ArchiverManager) archiverManagerCtl.getMock();
+        ArchiverManager archiverManager = mockManager.createMock( ArchiverManager.class );
 
         try
         {
-            archiverManager.getUnArchiver( source );
-            archiverManagerCtl.setReturnValue( unarchiver );
+            expect(archiverManager.getUnArchiver( source )).andReturn( unarchiver );
         }
         catch ( NoSuchArchiverException e )
         {
@@ -98,222 +85,4 @@
         mockManager.verifyAll();
     }
 
-    public void testGetLineEndingChars_ShouldReturnDosLineEnding()
-        throws AssemblyFormattingException
-    {
-        assertEquals( "\r\n", AssemblyFileUtils.getLineEndingCharacters( "windows" ) );
-        assertEquals( "\r\n", AssemblyFileUtils.getLineEndingCharacters( "dos" ) );
-        assertEquals( "\r\n", AssemblyFileUtils.getLineEndingCharacters( "crlf" ) );
-    }
-
-    public void testGetLineEndingChars_ShouldReturnUnixLineEnding()
-        throws AssemblyFormattingException
-    {
-        assertEquals( "\n", AssemblyFileUtils.getLineEndingCharacters( "unix" ) );
-        assertEquals( "\n", AssemblyFileUtils.getLineEndingCharacters( "lf" ) );
-    }
-
-    public void testGetLineEndingChars_ShouldReturnNullLineEnding()
-        throws AssemblyFormattingException
-    {
-        assertNull( AssemblyFileUtils.getLineEndingCharacters( "keep" ) );
-    }
-
-    public void testGetLineEndingChars_ShouldThrowFormattingExceptionWithInvalidHint()
-    {
-        try
-        {
-            AssemblyFileUtils.getLineEndingCharacters( "invalid" );
-
-            fail( "Invalid line-ending hint should throw a formatting exception." );
-        }
-        catch ( AssemblyFormattingException e )
-        {
-        }
-    }
-
-    public void testConvertLineEndings_ShouldReplaceLFWithCRLF()
-        throws IOException
-    {
-        String test = "This is a \ntest.";
-        String check = "This is a \r\ntest.";
-
-        testConversion( test, check, "\r\n", null );
-    }
-
-    public void testConvertLineEndings_ShouldReplaceLFWithCRLFAtEOF()
-        throws IOException
-    {
-        String test = "This is a \ntest.\n";
-        String check = "This is a \r\ntest.\r\n";
-
-        testConversion( test, check, "\r\n", null );
-    }
-
-    public void testConvertLineEndings_ShouldReplaceCRLFWithLF()
-        throws IOException
-    {
-        String test = "This is a \r\ntest.";
-        String check = "This is a \ntest.";
-
-        testConversion( test, check, "\n", null );
-    }
-
-    public void testConvertLineEndings_ShouldReplaceCRLFWithLFAtEOF()
-        throws IOException
-    {
-        String test = "This is a \r\ntest.\r\n";
-        String check = "This is a \ntest.\n";
-
-        testConversion( test, check, "\n", null );
-    }
-
-    public void testConvertLineEndings_ShouldReplaceLFWithLF()
-        throws IOException
-    {
-        String test = "This is a \ntest.";
-        String check = "This is a \ntest.";
-
-        testConversion( test, check, "\n", null );
-    }
-
-    public void testConvertLineEndings_ShouldReplaceLFWithLFAtEOF()
-        throws IOException
-    {
-        String test = "This is a \ntest.\n";
-        String check = "This is a \ntest.\n";
-
-        testConversion( test, check, "\n", null );
-    }
-
-    public void testConvertLineEndings_ShouldReplaceCRLFWithCRLF()
-        throws IOException
-    {
-        String test = "This is a \r\ntest.";
-        String check = "This is a \r\ntest.";
-
-        testConversion( test, check, "\r\n", null );
-    }
-
-    public void testConvertLineEndings_ShouldReplaceCRLFWithCRLFAtEOF()
-        throws IOException
-    {
-        String test = "This is a \r\ntest.\r\n";
-        String check = "This is a \r\ntest.\r\n";
-
-        testConversion( test, check, "\r\n", null );
-    }
-
-    public void testConvertLineEndings_LFToCRLFNoEOFForceEOF()
-        throws IOException
-    {
-        String test = "This is a \ntest.";
-        String check = "This is a \r\ntest.\r\n";
-
-        testConversion( test, check, "\r\n", true );
-    }
-
-    public void testConvertLineEndings_LFToCRLFWithEOFForceEOF()
-        throws IOException
-    {
-        String test = "This is a \ntest.\n";
-        String check = "This is a \r\ntest.\r\n";
-
-        testConversion( test, check, "\r\n", true );
-    }
-
-    public void testConvertLineEndings_LFToCRLFNoEOFStripEOF()
-        throws IOException
-    {
-        String test = "This is a \ntest.";
-        String check = "This is a \r\ntest.";
-
-        testConversion( test, check, "\r\n", false );
-    }
-
-    public void testConvertLineEndings_LFToCRLFWithEOFStripEOF()
-        throws IOException
-    {
-        String test = "This is a \ntest.\n";
-        String check = "This is a \r\ntest.";
-
-        testConversion( test, check, "\r\n", false );
-    }
-
-    public void testConvertLineEndings_CRLFToLFNoEOFForceEOF()
-        throws IOException
-    {
-        String test = "This is a \r\ntest.";
-        String check = "This is a \ntest.\n";
-
-        testConversion( test, check, "\n", true );
-    }
-
-    public void testConvertLineEndings_CRLFToLFWithEOFForceEOF()
-        throws IOException
-    {
-        String test = "This is a \r\ntest.\r\n";
-        String check = "This is a \ntest.\n";
-
-        testConversion( test, check, "\n", true );
-    }
-
-    public void testConvertLineEndings_CRLFToLFNoEOFStripEOF()
-        throws IOException
-    {
-        String test = "This is a \r\ntest.";
-        String check = "This is a \ntest.";
-
-        testConversion( test, check, "\n", false );
-    }
-
-    public void testConvertLineEndings_CRLFToLFWithEOFStripEOF()
-        throws IOException
-    {
-        String test = "This is a \r\ntest.\r\n";
-        String check = "This is a \ntest.";
-
-        testConversion( test, check, "\n", false );
-    }
-
-    private void testConversion( String test, String check, String lineEndingChars, Boolean eof )
-        throws IOException
-    {
-        File source = File.createTempFile( "line-conversion-test-in.", "" );
-        source.deleteOnExit();
-        File dest = File.createTempFile( "line-conversion-test-out.", "" );
-        dest.deleteOnExit();
-        
-        FileWriter sourceWriter = null;
-        StringReader sourceReader = new StringReader( test );
-        try
-        {
-            sourceWriter = new FileWriter( source );
-
-            IOUtil.copy( sourceReader, sourceWriter );
-        }
-        finally
-        {
-            IOUtil.close( sourceWriter );
-        }
-
-        // Using platform encoding for the conversion tests in this class is OK
-        AssemblyFileUtils.convertLineEndings( source, dest, lineEndingChars, eof, null );
-
-        FileReader destReader = null;
-        StringWriter destWriter = new StringWriter();
-        try
-        {
-            destReader = new FileReader( dest );
-
-            IOUtil.copy( destReader, destWriter );
-        }
-        finally
-        {
-            IOUtil.close( destReader );
-        }
-
-        assertEquals( check, destWriter.toString() );
-    }
-
 }
diff --git a/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtilsTest.java b/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtilsTest.java
index 1ef6f89..18e32a0 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtilsTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/utils/AssemblyFormatUtilsTest.java
@@ -30,16 +30,16 @@
 import org.apache.maven.plugin.assembly.archive.task.testutils.ArtifactMock;
 import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
 import org.apache.maven.plugin.assembly.model.Assembly;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
 import org.apache.maven.project.MavenProject;
-import org.easymock.MockControl;
-import org.easymock.classextension.MockClassControl;
+import org.easymock.classextension.EasyMockSupport;
+
+import static org.easymock.EasyMock.expect;
 
 public class AssemblyFormatUtilsTest
     extends TestCase
 {
 
-    private final MockManager mockManager = new MockManager();
+    private final EasyMockSupport mockManager = new EasyMockSupport();
 
     public void testFixRelativePathRefs_ShouldRemoveRelativeRefToCurrentDir()
         throws AssemblyFormattingException
@@ -294,22 +294,14 @@
 
         artifactProject.setArtifact( artifactMock.getArtifact() );
 
-        final MockControl sessionCtl = MockClassControl.createControl( MavenSession.class );
-        mockManager.add( sessionCtl );
+        final MavenSession session = mockManager.createMock(MavenSession.class);
+        expect( session.getExecutionProperties()).andReturn( null ).anyTimes();
 
-        final MavenSession session = (MavenSession) sessionCtl.getMock();
-        session.getExecutionProperties();
-        sessionCtl.setReturnValue( null, MockControl.ZERO_OR_MORE );
+        expect( session.getUserProperties()).andReturn( new Properties(  ) ).anyTimes();
 
-        session.getUserProperties();
-        sessionCtl.setReturnValue( new Properties(), MockControl.ZERO_OR_MORE );
 
-        final MockControl csCtl = MockControl.createControl( AssemblerConfigurationSource.class );
-        mockManager.add( csCtl );
-
-        final AssemblerConfigurationSource cs = (AssemblerConfigurationSource) csCtl.getMock();
-        cs.getMavenSession();
-        csCtl.setReturnValue( session, MockControl.ZERO_OR_MORE );
+        final AssemblerConfigurationSource cs = mockManager.createMock( AssemblerConfigurationSource.class );
+        expect( cs.getMavenSession()).andReturn( session ).anyTimes();
 
         mockManager.replayAll();
 
@@ -322,7 +314,7 @@
         mockManager.verifyAll();
 
         // clear out for next call.
-        mockManager.clear();
+        mockManager.resetAll();
     }
 
     public void testEvalFileNameMapping_ShouldResolveGroupIdInOutDir_UseArtifactInfo()
@@ -611,22 +603,15 @@
             new ArtifactMock( mockManager, moduleProject.getGroupId(), moduleProject.getArtifactId(),
                               moduleProject.getVersion(), "jar", false, null );
 
-        final MockControl sessionCtl = MockClassControl.createControl( MavenSession.class );
-        mockManager.add( sessionCtl );
 
-        final MavenSession session = (MavenSession) sessionCtl.getMock();
-        session.getExecutionProperties();
-        sessionCtl.setReturnValue( System.getProperties(), MockControl.ZERO_OR_MORE );
+        final MavenSession session = mockManager.createMock( MavenSession.class );
+        expect( session.getExecutionProperties()).andReturn( System.getProperties() ).anyTimes();
 
-        session.getUserProperties();
-        sessionCtl.setReturnValue( new Properties(), MockControl.ZERO_OR_MORE );
+        expect(session.getUserProperties()).andReturn( new Properties(  ) ).anyTimes();
 
-        final MockControl csCtl = MockControl.createControl( AssemblerConfigurationSource.class );
-        mockManager.add( csCtl );
 
-        final AssemblerConfigurationSource cs = (AssemblerConfigurationSource) csCtl.getMock();
-        cs.getMavenSession();
-        csCtl.setReturnValue( session, MockControl.ZERO_OR_MORE );
+        final AssemblerConfigurationSource cs = mockManager.createMock( AssemblerConfigurationSource.class );
+        expect( cs.getMavenSession()).andReturn( session ).anyTimes();
 
         mockManager.replayAll();
 
@@ -640,7 +625,7 @@
         mockManager.verifyAll();
 
         // clear out for next call.
-        mockManager.clear();
+        mockManager.resetAll();
     }
 
     private void verifyOutputDir( final String outDir, final String finalName, final String projectFinalName,
@@ -666,11 +651,10 @@
             project.getModel().setBuild( build );
         }
 
-        final MavenProject mainProject = project;
         final MavenProject moduleProject = createProject( "unknown", "unknown", "unknown", null );
         final MavenProject artifactProject = createProject( "unknown", "unknown", "unknown", null );
 
-        verifyOutputDir( outDir, finalName, mainProject, moduleProject, artifactProject, checkValue );
+        verifyOutputDir( outDir, finalName, project, moduleProject, artifactProject, checkValue );
     }
 
     private void verifyOutputDirUsingModuleProject( final String outDir, final String finalName, final String groupId,
@@ -689,11 +673,10 @@
             project.getModel().setBuild( build );
         }
 
-        final MavenProject moduleProject = project;
         final MavenProject mainProject = createProject( "unknown", "unknown", "unknown", null );
         final MavenProject artifactProject = createProject( "unknown", "unknown", "unknown", null );
 
-        verifyOutputDir( outDir, finalName, mainProject, moduleProject, artifactProject, checkValue );
+        verifyOutputDir( outDir, finalName, mainProject, project, artifactProject, checkValue );
     }
 
     private void verifyOutputDirUsingArtifactProject( final String outDir, final String finalName,
@@ -712,11 +695,10 @@
             project.getModel().setBuild( build );
         }
 
-        final MavenProject artifactProject = project;
         final MavenProject moduleProject = createProject( "unknown", "unknown", "unknown", null );
         final MavenProject mainProject = createProject( "unknown", "unknown", "unknown", null );
 
-        verifyOutputDir( outDir, finalName, mainProject, moduleProject, artifactProject, checkValue );
+        verifyOutputDir( outDir, finalName, mainProject, moduleProject, project, checkValue );
     }
 
     private void verifyOutputDir( final String outDir, final String finalName, final MavenProject mainProject,
@@ -724,22 +706,15 @@
                                   final String checkValue )
         throws AssemblyFormattingException
     {
-        final MockControl sessionCtl = MockClassControl.createControl( MavenSession.class );
-        mockManager.add( sessionCtl );
 
-        final MavenSession session = (MavenSession) sessionCtl.getMock();
-        session.getExecutionProperties();
-        sessionCtl.setReturnValue( System.getProperties(), MockControl.ZERO_OR_MORE );
+        final MavenSession session = mockManager.createMock( MavenSession.class );
+        expect( session.getExecutionProperties()).andReturn(  System.getProperties()).anyTimes();
 
-        session.getUserProperties();
-        sessionCtl.setReturnValue( new Properties(), MockControl.ZERO_OR_MORE );
+        expect( session.getUserProperties()).andReturn( new Properties(  ) ).anyTimes();
 
-        final MockControl csCtl = MockControl.createControl( AssemblerConfigurationSource.class );
-        mockManager.add( csCtl );
 
-        final AssemblerConfigurationSource cs = (AssemblerConfigurationSource) csCtl.getMock();
-        cs.getMavenSession();
-        csCtl.setReturnValue( session, MockControl.ZERO_OR_MORE );
+        final AssemblerConfigurationSource cs = mockManager.createMock( AssemblerConfigurationSource.class );
+        expect( cs.getMavenSession()).andReturn( session ).anyTimes();
 
         String result;
 
@@ -751,7 +726,7 @@
 
         mockManager.verifyAll();
 
-        mockManager.clear();
+        mockManager.resetAll();
     }
 
     private void verifyDistroName( final String assemblyId, final String classifier, final String finalName,
@@ -772,14 +747,12 @@
         mockManager.verifyAll();
 
         // clear it out for the next call.
-        mockManager.clear();
+        mockManager.resetAll();
     }
 
     private final class MockAndControlForGetDistroName
     {
-        MockControl control;
-
-        AssemblerConfigurationSource configSource;
+        final AssemblerConfigurationSource configSource;
 
         private final String classifier;
 
@@ -794,24 +767,18 @@
             this.isAssemblyIdAppended = isAssemblyIdAppended;
             this.classifier = classifier;
 
-            control = MockControl.createControl( AssemblerConfigurationSource.class );
-            mockManager.add( control );
-
-            configSource = (AssemblerConfigurationSource) control.getMock();
+            configSource = mockManager.createMock (AssemblerConfigurationSource.class);
 
             enableExpectations();
         }
 
         private void enableExpectations()
         {
-            configSource.getClassifier();
-            control.setReturnValue( classifier, MockControl.ONE_OR_MORE );
+            expect(configSource.getClassifier()).andReturn( classifier ).atLeastOnce();
 
-            configSource.isAssemblyIdAppended();
-            control.setReturnValue( isAssemblyIdAppended, MockControl.ONE_OR_MORE );
+            expect(configSource.isAssemblyIdAppended()).andReturn( isAssemblyIdAppended ).atLeastOnce();
 
-            configSource.getFinalName();
-            control.setReturnValue( finalName, MockControl.ONE_OR_MORE );
+            expect( configSource.getFinalName()).andReturn( finalName ).atLeastOnce();
         }
 
     }
diff --git a/src/test/java/org/apache/maven/plugin/assembly/utils/FilterUtilsTest.java b/src/test/java/org/apache/maven/plugin/assembly/utils/FilterUtilsTest.java
index 605f815..4ed9167 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/utils/FilterUtilsTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/utils/FilterUtilsTest.java
@@ -19,6 +19,16 @@
  * under the License.
  */
 
+import junit.framework.TestCase;
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
+import org.apache.maven.model.Model;
+import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
+import org.apache.maven.project.MavenProject;
+import org.codehaus.plexus.logging.Logger;
+import org.codehaus.plexus.logging.console.ConsoleLogger;
+import org.easymock.classextension.EasyMockSupport;
+
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
@@ -26,23 +36,13 @@
 import java.util.List;
 import java.util.Set;
 
-import junit.framework.TestCase;
-
-import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
-import org.apache.maven.model.Model;
-import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
-import org.apache.maven.plugin.assembly.testutils.MockManager;
-import org.apache.maven.project.MavenProject;
-import org.codehaus.plexus.logging.Logger;
-import org.codehaus.plexus.logging.console.ConsoleLogger;
-import org.easymock.MockControl;
+import static org.easymock.EasyMock.expect;
 
 public class FilterUtilsTest
     extends TestCase
 {
 
-    private final MockManager mockManager = new MockManager();
+    private final EasyMockSupport mockManager = new EasyMockSupport();
 
     private Logger logger;
 
@@ -54,29 +54,20 @@
 
     private void clearAll()
     {
-        mockManager.clear();
-
         logger = new ConsoleLogger( Logger.LEVEL_DEBUG, "test" );
     }
 
     public void testFilterArtifacts_ShouldThrowExceptionUsingStrictModeWithUnmatchedInclude()
     {
-        final MockControl artifactCtl = MockControl.createControl( Artifact.class );
-        final Artifact artifact = (Artifact) artifactCtl.getMock();
+        final Artifact artifact = mockManager.createMock( Artifact.class );
 
-        mockManager.add( artifactCtl );
+        expect(artifact.getGroupId()).andReturn( "group").atLeastOnce();
 
-        artifact.getGroupId();
-        artifactCtl.setReturnValue( "group", MockControl.ONE_OR_MORE );
+        expect( artifact.getArtifactId()).andReturn( "artifact").atLeastOnce();
 
-        artifact.getArtifactId();
-        artifactCtl.setReturnValue( "artifact", MockControl.ONE_OR_MORE );
+        expect( artifact.getId()).andReturn( "group:artifact:type:version").atLeastOnce();
 
-        artifact.getId();
-        artifactCtl.setReturnValue( "group:artifact:type:version", MockControl.ONE_OR_MORE );
-
-        artifact.getDependencyConflictId();
-        artifactCtl.setReturnValue( "group:artifact:type", MockControl.ONE_OR_MORE );
+        expect( artifact.getDependencyConflictId()).andReturn( "group:artifact:type").atLeastOnce();
 
         final List<String> includes = new ArrayList<String>();
 
@@ -274,7 +265,7 @@
         mockManager.verifyAll();
 
         // get ready for multiple calls per test.
-        mockManager.clear();
+        mockManager.resetAll();
     }
 
     private void verifyProjectInclusion( final String groupId, final String artifactId, final String inclusionPattern,
@@ -342,7 +333,7 @@
         mockManager.verifyAll();
 
         // get ready for multiple calls per test.
-        mockManager.clear();
+        mockManager.resetAll();
     }
 
     private static Model buildModel( final String groupId, final String artifactId )
@@ -357,7 +348,7 @@
     private final class ProjectWithArtifactMockControl
         extends MavenProject
     {
-        ArtifactMockAndControl mac;
+        final ArtifactMockAndControl mac;
 
         ProjectWithArtifactMockControl( final String groupId, final String artifactId, final List<String> depTrail )
         {
@@ -372,15 +363,13 @@
 
     private final class ArtifactMockAndControl
     {
-        MockControl control;
+        final Artifact artifact;
 
-        Artifact artifact;
+        final String groupId;
 
-        String groupId;
+        final String artifactId;
 
-        String artifactId;
-
-        List<String> dependencyTrail;
+        final List<String> dependencyTrail;
 
         ArtifactMockAndControl( final String groupId, final String artifactId, final List<String> dependencyTrail )
         {
@@ -388,10 +377,7 @@
             this.artifactId = artifactId;
             this.dependencyTrail = dependencyTrail;
 
-            control = MockControl.createControl( Artifact.class );
-            mockManager.add( control );
-
-            artifact = (Artifact) control.getMock();
+            artifact = mockManager.createMock (Artifact.class);
 
             // this is always enabled, for verification purposes.
             enableGetDependencyConflictId();
@@ -405,26 +391,21 @@
 
         void enableGetDependencyTrail()
         {
-            artifact.getDependencyTrail();
-            control.setReturnValue( dependencyTrail, MockControl.ZERO_OR_MORE );
+            expect( artifact.getDependencyTrail()).andReturn( dependencyTrail ).anyTimes();
         }
 
         void enableGetDependencyConflictId()
         {
-            artifact.getDependencyConflictId();
-            control.setReturnValue( groupId + ":" + artifactId + ":jar", MockControl.ZERO_OR_MORE );
+            expect(artifact.getDependencyConflictId()).andReturn( groupId + ":" + artifactId + ":jar").anyTimes();
         }
 
         void enableGetGroupIdArtifactIdAndId()
         {
-            artifact.getGroupId();
-            control.setReturnValue( groupId, MockControl.ZERO_OR_MORE );
+            expect( artifact.getGroupId()).andReturn( groupId).anyTimes();
 
-            artifact.getArtifactId();
-            control.setReturnValue( artifactId, MockControl.ZERO_OR_MORE );
+            expect( artifact.getArtifactId()).andReturn( artifactId ).anyTimes();
 
-            artifact.getId();
-            control.setReturnValue( groupId + ":" + artifactId + ":version:null:jar", MockControl.ZERO_OR_MORE );
+            expect( artifact.getId()).andReturn( groupId + ":" + artifactId + ":version:null:jar").anyTimes();
         }
     }
 
diff --git a/src/test/java/org/apache/maven/plugin/assembly/utils/LineEndingsUtilsTest.java b/src/test/java/org/apache/maven/plugin/assembly/utils/LineEndingsUtilsTest.java
new file mode 100644
index 0000000..3be732b
--- /dev/null
+++ b/src/test/java/org/apache/maven/plugin/assembly/utils/LineEndingsUtilsTest.java
@@ -0,0 +1,302 @@
+package org.apache.maven.plugin.assembly.utils;
+
+/*
+ * 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.
+ */
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+
+import java.io.File;
+import java.io.FileReader;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.io.StringReader;
+import java.io.StringWriter;
+
+import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
+import org.codehaus.plexus.util.IOUtil;
+import org.junit.Test;
+
+public class LineEndingsUtilsTest
+{
+
+    private static final String CRLF = "\r\n";
+
+    private static final String LF = "\n";
+
+    @Test
+    public void shouldWorkCauseWeTestJdkEnumConversion()
+    {
+        LineEndings lineEnding = LineEndings.valueOf( "windows" );
+        assertEquals( CRLF, lineEnding.getLineEndingCharacters() );
+    }
+
+    @Test
+    public void shouldReturnDosLineEnding()
+    {
+        assertEquals( CRLF, LineEndings.windows.getLineEndingCharacters() );
+        assertEquals( CRLF, LineEndings.dos.getLineEndingCharacters() );
+        assertEquals( CRLF, LineEndings.crlf.getLineEndingCharacters() );
+    }
+
+    @Test
+    public void shouldReturnUnixLineEnding()
+    {
+        assertEquals( LF, LineEndings.unix.getLineEndingCharacters() );
+        assertEquals( LF, LineEndings.lf.getLineEndingCharacters() );
+    }
+
+    @Test
+    public void shouldReturnNullAsLineEndingForKeep()
+    {
+        assertEquals( null, LineEndings.keep.getLineEndingCharacters() );
+    }
+
+    @Test
+    public void testGetLineEndingChars_ShouldReturnDosLineEnding()
+        throws AssemblyFormattingException
+    {
+        assertEquals( "\r\n", LineEndingsUtils.getLineEndingCharacters( "windows" ) );
+        assertEquals( "\r\n", LineEndingsUtils.getLineEndingCharacters( "dos" ) );
+        assertEquals( "\r\n", LineEndingsUtils.getLineEndingCharacters( "crlf" ) );
+    }
+
+    @Test
+    public void testGetLineEndingChars_ShouldReturnUnixLineEnding()
+        throws AssemblyFormattingException
+    {
+        assertEquals( "\n", LineEndingsUtils.getLineEndingCharacters( "unix" ) );
+        assertEquals( "\n", LineEndingsUtils.getLineEndingCharacters( "lf" ) );
+    }
+
+    @Test
+    public void testGetLineEndingChars_ShouldReturnNullLineEnding()
+        throws AssemblyFormattingException
+    {
+        assertNull( LineEndingsUtils.getLineEndingCharacters( "keep" ) );
+    }
+
+    @Test( expected = AssemblyFormattingException.class )
+    public void testGetLineEndingChars_ShouldThrowFormattingExceptionWithInvalidHint()
+        throws AssemblyFormattingException
+    {
+        LineEndingsUtils.getLineEndingCharacters( "invalid" );
+    }
+
+    @Test
+    public void testConvertLineEndings_ShouldReplaceLFWithCRLF()
+        throws IOException
+    {
+        String test = "This is a \ntest.";
+        String check = "This is a \r\ntest.";
+
+        testConversion( test, check, LineEndings.crlf, null );
+    }
+
+    @Test
+    public void testConvertLineEndings_ShouldReplaceLFWithCRLFAtEOF()
+        throws IOException
+    {
+        String test = "This is a \ntest.\n";
+        String check = "This is a \r\ntest.\r\n";
+
+        testConversion( test, check, LineEndings.crlf, null );
+    }
+
+    @Test
+    public void testConvertLineEndings_ShouldReplaceCRLFWithLF()
+        throws IOException
+    {
+        String test = "This is a \r\ntest.";
+        String check = "This is a \ntest.";
+
+        testConversion( test, check, LineEndings.lf, null );
+    }
+
+    @Test
+    public void testConvertLineEndings_ShouldReplaceCRLFWithLFAtEOF()
+        throws IOException
+    {
+        String test = "This is a \r\ntest.\r\n";
+        String check = "This is a \ntest.\n";
+
+        testConversion( test, check, LineEndings.lf, null );
+    }
+
+    @Test
+    public void testConvertLineEndings_ShouldReplaceLFWithLF()
+        throws IOException
+    {
+        String test = "This is a \ntest.";
+        String check = "This is a \ntest.";
+
+        testConversion( test, check, LineEndings.lf, null );
+    }
+
+    @Test
+    public void testConvertLineEndings_ShouldReplaceLFWithLFAtEOF()
+        throws IOException
+    {
+        String test = "This is a \ntest.\n";
+        String check = "This is a \ntest.\n";
+
+        testConversion( test, check, LineEndings.lf, null );
+    }
+
+    @Test
+    public void testConvertLineEndings_ShouldReplaceCRLFWithCRLF()
+        throws IOException
+    {
+        String test = "This is a \r\ntest.";
+        String check = "This is a \r\ntest.";
+
+        testConversion( test, check, LineEndings.crlf, null );
+    }
+
+    @Test
+    public void testConvertLineEndings_ShouldReplaceCRLFWithCRLFAtEOF()
+        throws IOException
+    {
+        String test = "This is a \r\ntest.\r\n";
+        String check = "This is a \r\ntest.\r\n";
+
+        testConversion( test, check, LineEndings.crlf, null );
+    }
+
+    @Test
+    public void testConvertLineEndings_LFToCRLFNoEOFForceEOF()
+        throws IOException
+    {
+        String test = "This is a \ntest.";
+        String check = "This is a \r\ntest.\r\n";
+
+        testConversion( test, check, LineEndings.crlf, true );
+    }
+
+    @Test
+    public void testConvertLineEndings_LFToCRLFWithEOFForceEOF()
+        throws IOException
+    {
+        String test = "This is a \ntest.\n";
+        String check = "This is a \r\ntest.\r\n";
+
+        testConversion( test, check, LineEndings.crlf, true );
+    }
+
+    @Test
+    public void testConvertLineEndings_LFToCRLFNoEOFStripEOF()
+        throws IOException
+    {
+        String test = "This is a \ntest.";
+        String check = "This is a \r\ntest.";
+
+        testConversion( test, check, LineEndings.crlf, false );
+    }
+
+    @Test
+    public void testConvertLineEndings_LFToCRLFWithEOFStripEOF()
+        throws IOException
+    {
+        String test = "This is a \ntest.\n";
+        String check = "This is a \r\ntest.";
+
+        testConversion( test, check, LineEndings.crlf, false );
+    }
+
+    @Test
+    public void testConvertLineEndings_CRLFToLFNoEOFForceEOF()
+        throws IOException
+    {
+        String test = "This is a \r\ntest.";
+        String check = "This is a \ntest.\n";
+
+        testConversion( test, check, LineEndings.lf, true );
+    }
+
+    @Test
+    public void testConvertLineEndings_CRLFToLFWithEOFForceEOF()
+        throws IOException
+    {
+        String test = "This is a \r\ntest.\r\n";
+        String check = "This is a \ntest.\n";
+
+        testConversion( test, check, LineEndings.lf, true );
+    }
+
+    @Test
+    public void testConvertLineEndings_CRLFToLFNoEOFStripEOF()
+        throws IOException
+    {
+        String test = "This is a \r\ntest.";
+        String check = "This is a \ntest.";
+
+        testConversion( test, check, LineEndings.lf, false );
+    }
+
+    @Test
+    public void testConvertLineEndings_CRLFToLFWithEOFStripEOF()
+        throws IOException
+    {
+        String test = "This is a \r\ntest.\r\n";
+        String check = "This is a \ntest.";
+
+        testConversion( test, check, LineEndings.lf, false );
+    }
+
+    private void testConversion( String test, String check, LineEndings lineEndingChars, Boolean eof )
+        throws IOException
+    {
+        File source = File.createTempFile( "line-conversion-test-in.", "" );
+        source.deleteOnExit();
+        File dest = File.createTempFile( "line-conversion-test-out.", "" );
+        dest.deleteOnExit();
+
+        FileWriter sourceWriter = null;
+        StringReader sourceReader = new StringReader( test );
+        try
+        {
+            sourceWriter = new FileWriter( source );
+
+            IOUtil.copy( sourceReader, sourceWriter );
+        }
+        finally
+        {
+            IOUtil.close( sourceWriter );
+        }
+
+        // Using platform encoding for the conversion tests in this class is OK
+        LineEndingsUtils.convertLineEndings( source, dest, lineEndingChars, eof, null );
+
+        FileReader destReader = null;
+        StringWriter destWriter = new StringWriter();
+        try
+        {
+            destReader = new FileReader( dest );
+
+            IOUtil.copy( destReader, destWriter );
+        }
+        finally
+        {
+            IOUtil.close( destReader );
+        }
+
+        assertEquals( check, destWriter.toString() );
+    }
+
+}
diff --git a/src/test/java/org/apache/maven/plugin/assembly/utils/LinuxLineFeedInputStreamTest.java b/src/test/java/org/apache/maven/plugin/assembly/utils/LinuxLineFeedInputStreamTest.java
new file mode 100644
index 0000000..1ca3844
--- /dev/null
+++ b/src/test/java/org/apache/maven/plugin/assembly/utils/LinuxLineFeedInputStreamTest.java
@@ -0,0 +1,84 @@
+package org.apache.maven.plugin.assembly.utils;
+
+/*
+ * 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.
+ */
+
+import junit.framework.TestCase;
+
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+
+public class LinuxLineFeedInputStreamTest
+    extends TestCase
+{
+
+    public void testSimpleString()
+        throws Exception
+    {
+        assertEquals( "abc\n", roundtrip( "abc" ) );
+    }
+
+    public void testInTheMiddleOfTheLine()
+        throws Exception
+    {
+        assertEquals( "a\nbc\n", roundtrip( "a\r\nbc" ) );
+    }
+
+    public void testMultipleBlankLines()
+        throws Exception
+    {
+        assertEquals( "a\n\nbc\n", roundtrip( "a\r\n\r\nbc" ) );
+    }
+
+    public void testTwoLinesAtEnd()
+        throws Exception
+    {
+        assertEquals( "a\n\n", roundtrip( "a\r\n\r\n" ) );
+    }
+
+    public void testMalformed()
+        throws Exception
+    {
+        assertEquals( "abc", roundtrip( "a\rbc", false ) );
+    }
+
+    public void testRetainLineFeed()
+        throws Exception
+    {
+        assertEquals( "a\n\n", roundtrip( "a\r\n\r\n", false ) );
+        assertEquals( "a", roundtrip( "a", false ) );
+    }
+
+    private String roundtrip( String msg )
+        throws IOException
+    {
+        return roundtrip( msg, true );
+    }
+
+    private String roundtrip( String msg, boolean ensure )
+        throws IOException
+    {
+        ByteArrayInputStream baos = new ByteArrayInputStream( msg.getBytes() );
+        LinuxLineFeedInputStream lf = new LinuxLineFeedInputStream( baos, ensure );
+        byte[] buf = new byte[100];
+        final int read = lf.read( buf );
+        return new String( buf, 0, read );
+    }
+
+}
\ No newline at end of file
diff --git a/src/test/java/org/apache/maven/plugin/assembly/utils/ProjectUtilsTest.java b/src/test/java/org/apache/maven/plugin/assembly/utils/ProjectUtilsTest.java
index 7da98f7..b1373aa 100644
--- a/src/test/java/org/apache/maven/plugin/assembly/utils/ProjectUtilsTest.java
+++ b/src/test/java/org/apache/maven/plugin/assembly/utils/ProjectUtilsTest.java
@@ -45,9 +45,7 @@
         model.setGroupId( groupId );
         model.setVersion( version );
 
-        final MavenProject project = new MavenProject( model );
-
-        return project;
+        return new MavenProject( model );
     }
 
     public void testGetProjectModules_ShouldIncludeDirectModuleOfMasterProject() throws IOException
diff --git a/src/test/java/org/apache/maven/plugin/assembly/utils/WindowsLineFeedInputStreamTest.java b/src/test/java/org/apache/maven/plugin/assembly/utils/WindowsLineFeedInputStreamTest.java
new file mode 100644
index 0000000..ae1e0fc
--- /dev/null
+++ b/src/test/java/org/apache/maven/plugin/assembly/utils/WindowsLineFeedInputStreamTest.java
@@ -0,0 +1,93 @@
+package org.apache.maven.plugin.assembly.utils;
+
+/*
+ * 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.
+ */
+
+import junit.framework.TestCase;
+
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+
+public class WindowsLineFeedInputStreamTest
+    extends TestCase
+{
+
+    public void testSimpleString()
+        throws Exception
+    {
+        assertEquals( "abc\r\n", roundtrip( "abc" ) );
+    }
+
+    public void testInTheMiddleOfTheLine()
+        throws Exception
+    {
+        assertEquals( "a\r\nbc\r\n", roundtrip( "a\r\nbc" ) );
+    }
+
+    public void testMultipleBlankLines()
+        throws Exception
+    {
+        assertEquals( "a\r\n\r\nbc\r\n", roundtrip( "a\r\n\r\nbc" ) );
+    }
+
+    public void testTwoLinesAtEnd()
+        throws Exception
+    {
+        assertEquals( "a\r\n\r\n", roundtrip( "a\r\n\r\n" ) );
+    }
+
+    public void testLinuxLinefeeds()
+        throws Exception
+    {
+        final String roundtrip = roundtrip( "ab\nc", false );
+        assertEquals( "ab\r\nc", roundtrip );
+    }
+
+
+    public void testMalformed()
+        throws Exception
+    {
+        assertEquals( "a\rbc", roundtrip( "a\rbc", false ) );
+    }
+
+    public void testRetainLineFeed()
+        throws Exception
+    {
+        assertEquals( "a\r\n\r\n", roundtrip( "a\r\n\r\n", false ) );
+        assertEquals( "a", roundtrip( "a", false ) );
+    }
+
+    private String roundtrip( String msg )
+        throws IOException
+    {
+        return roundtrip( msg, true );
+    }
+
+    private String roundtrip( String msg, boolean ensure )
+        throws IOException
+    {
+        ByteArrayInputStream baos = new ByteArrayInputStream( msg.getBytes() );
+        WindowsLineFeedInputStream lf = new WindowsLineFeedInputStream( baos, ensure );
+        byte[] buf = new byte[100];
+        final int read = lf.read( buf );
+        return new String( buf, 0, read );
+    }
+
+
+}
\ No newline at end of file
diff --git a/src/test/resources/assemblies/empty.xml b/src/test/resources/assemblies/empty.xml
index e69de29..0e29d96 100644
--- a/src/test/resources/assemblies/empty.xml
+++ b/src/test/resources/assemblies/empty.xml
@@ -0,0 +1,20 @@
+<?xml version='1.0'?>
+<!--
+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.
+-->
+