diff --git a/asm4/pom.xml b/asm4/pom.xml
index 90318f5..cc80d21 100644
--- a/asm4/pom.xml
+++ b/asm4/pom.xml
@@ -33,7 +33,7 @@
     <dependencies>
         <dependency>
             <groupId>${project.groupId}</groupId>
-            <artifactId>commons-proxy2</artifactId>
+            <artifactId>commons-proxy2-core</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>
@@ -46,7 +46,7 @@
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
-            <artifactId>commons-proxy2</artifactId>
+            <artifactId>commons-proxy2-core</artifactId>
             <version>${project.version}</version>
             <type>test-jar</type>
             <scope>test</scope>
diff --git a/cglib/pom.xml b/cglib/pom.xml
index ce16287..0fa2c6e 100644
--- a/cglib/pom.xml
+++ b/cglib/pom.xml
@@ -33,7 +33,7 @@
     <dependencies>
         <dependency>
             <groupId>${project.groupId}</groupId>
-            <artifactId>commons-proxy2</artifactId>
+            <artifactId>commons-proxy2-core</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>
@@ -43,7 +43,7 @@
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
-            <artifactId>commons-proxy2</artifactId>
+            <artifactId>commons-proxy2-core</artifactId>
             <version>${project.version}</version>
             <type>test-jar</type>
             <scope>test</scope>
diff --git a/core/pom.xml b/core/pom.xml
index eb360da..4b21370 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -25,7 +25,7 @@
     </parent>
     <modelVersion>4.0.0</modelVersion>
 
-    <artifactId>commons-proxy2</artifactId>
+    <artifactId>commons-proxy2-core</artifactId>
     <name>Commons Proxy Core</name>
     <dependencies>
         <dependency>
diff --git a/dist/pom.xml b/dist/pom.xml
new file mode 100644
index 0000000..b39dfdc
--- /dev/null
+++ b/dist/pom.xml
@@ -0,0 +1,156 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>org.apache.commons</groupId>
+    <artifactId>commons-proxy2-parent</artifactId>
+    <version>2.0-SNAPSHOT</version>
+  </parent>
+
+  <artifactId>commons-proxy2</artifactId>
+  <packaging>pom</packaging>
+  <name>Apache Commons Proxy Distribution</name>
+  <description>
+    Creates the Apache Commons Proxy multimodule distribution.
+  </description>
+
+  <scm>
+    <connection>scm:svn:http://svn.apache.org/repos/asf/commons/proper/proxy/trunk/dist</connection>
+    <developerConnection>scm:svn:https://svn.apache.org/repos/asf/commons/proper/proxy/trunk/dist</developerConnection>
+    <url>http://svn.apache.org/viewvc/commons/proper/proxy/trunk/dist</url>
+  </scm>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-proxy2-core</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-proxy2-core</artifactId>
+      <classifier>sources</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-proxy2-core</artifactId>
+      <classifier>javadoc</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-proxy2-asm4</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-proxy2-asm4</artifactId>
+      <classifier>sources</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-proxy2-asm4</artifactId>
+      <classifier>javadoc</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-proxy2-cglib</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-proxy2-cglib</artifactId>
+      <classifier>sources</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-proxy2-cglib</artifactId>
+      <classifier>javadoc</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-proxy2-javassist</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-proxy2-javassist</artifactId>
+      <classifier>sources</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-proxy2-javassist</artifactId>
+      <classifier>javadoc</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-proxy2-jdk</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-proxy2-jdk</artifactId>
+      <classifier>sources</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.commons</groupId>
+      <artifactId>commons-proxy2-jdk</artifactId>
+      <classifier>javadoc</classifier>
+    </dependency>
+  </dependencies>
+
+  <!-- TODO create md5 and sha1 hashes directly, since skipped deploy
+       plugin won't be doing it for us -->
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-deploy-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+  <profiles>
+    <profile>
+      <id>release</id>
+      <build>
+        <plugins>
+          <plugin>
+            <artifactId>maven-assembly-plugin</artifactId>
+            <version>2.4</version>
+            <executions>
+              <execution>
+                <id>create-distribution</id>
+                <phase>package</phase>
+                <goals>
+                  <goal>single</goal>
+                </goals>
+                <configuration>
+                  <descriptors>
+                    <descriptor>src/assembly/bin.xml</descriptor>
+                    <descriptor>src/assembly/src.xml</descriptor>
+                  </descriptors>
+                  <tarLongFileMode>gnu</tarLongFileMode>
+                </configuration>
+              </execution>
+            </executions>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+  </profiles>
+</project>
diff --git a/dist/src/assembly/bin.xml b/dist/src/assembly/bin.xml
new file mode 100644
index 0000000..6b3f2e3
--- /dev/null
+++ b/dist/src/assembly/bin.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>
+  <id>bin</id>
+  <formats>
+    <format>tar.gz</format>
+    <format>zip</format>
+  </formats>
+  <baseDirectory>${project.artifactId}-${project.version}</baseDirectory>
+  <includeSiteDirectory>false</includeSiteDirectory>
+  <dependencySets>
+    <dependencySet>
+      <useProjectArtifact>false</useProjectArtifact>
+      <useTransitiveDependencies>false</useTransitiveDependencies>
+    </dependencySet>
+  </dependencySets>
+
+  <fileSets>
+    <fileSet>
+      <directory>${project.basedir}/..</directory>
+      <includes>
+        <include>LICENSE.txt</include>
+        <include>NOTICE.txt</include>
+        <include>RELEASE-NOTES.txt</include>
+      </includes>
+    </fileSet>
+  </fileSets>
+</assembly>
diff --git a/dist/src/assembly/src.xml b/dist/src/assembly/src.xml
new file mode 100644
index 0000000..7cf67e5
--- /dev/null
+++ b/dist/src/assembly/src.xml
@@ -0,0 +1,35 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements.  See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT 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>
+    <format>tar.gz</format>
+    <format>zip</format>
+  </formats>
+  <baseDirectory>${project.artifactId}-${project.version}-src</baseDirectory>
+  <fileSets>
+    <fileSet>
+      <directory>${project.basedir}/..</directory>
+      <excludes>
+        <exclude>${project.build.directory}/**</exclude>
+        <exclude>.*/**</exclude>
+        <exclude>**/${project.build.directory}/**</exclude>
+        <exclude>**/.*/**</exclude>
+      </excludes>
+    </fileSet>
+  </fileSets>
+</assembly>
diff --git a/javassist/pom.xml b/javassist/pom.xml
index 3782009..bfb013c 100644
--- a/javassist/pom.xml
+++ b/javassist/pom.xml
@@ -33,7 +33,7 @@
     <dependencies>
         <dependency>
             <groupId>${project.groupId}</groupId>
-            <artifactId>commons-proxy2</artifactId>
+            <artifactId>commons-proxy2-core</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>
@@ -42,7 +42,7 @@
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
-            <artifactId>commons-proxy2</artifactId>
+            <artifactId>commons-proxy2-core</artifactId>
             <version>${project.version}</version>
             <type>test-jar</type>
             <scope>test</scope>
diff --git a/jdk/pom.xml b/jdk/pom.xml
index a6ef879..28715b7 100644
--- a/jdk/pom.xml
+++ b/jdk/pom.xml
@@ -33,12 +33,12 @@
     <dependencies>
         <dependency>
             <groupId>${project.groupId}</groupId>
-            <artifactId>commons-proxy2</artifactId>
+            <artifactId>commons-proxy2-core</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
-            <artifactId>commons-proxy2</artifactId>
+            <artifactId>commons-proxy2-core</artifactId>
             <version>${project.version}</version>
             <type>test-jar</type>
             <scope>test</scope>
diff --git a/pom.xml b/pom.xml
index 4412469..8a251a2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -18,244 +18,693 @@
   -->
 <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>
-    <packaging>pom</packaging>
-    <modules>
-        <module>core</module>
-        <module>jdk</module>
-        <module>asm4</module>
-        <module>javassist</module>
-        <module>cglib</module>
-        <module>build-tools</module>
-        <module>test</module>
-    </modules>
-    <parent>
+  <modelVersion>4.0.0</modelVersion>
+  <packaging>pom</packaging>
+  <parent>
+    <groupId>org.apache.commons</groupId>
+    <artifactId>commons-parent</artifactId>
+    <version>33</version>
+  </parent>
+  <artifactId>commons-proxy2-parent</artifactId>
+  <version>2.0-SNAPSHOT</version>
+  <name>Apache Commons Proxy</name>
+  <description>Java library for dynamic proxying</description>
+  <url>http://commons.apache.org/proxy/</url>
+  <inceptionYear>2005</inceptionYear>
+
+  <issueManagement>
+    <system>JIRA</system>
+    <url>http://issues.apache.org/jira/browse/PROXY</url>
+  </issueManagement>
+
+  <properties>
+    <maven.compiler.source>1.6</maven.compiler.source>
+    <maven.compiler.target>1.6</maven.compiler.target>
+    <commons.componentid>proxy</commons.componentid>
+    <commons.release.version>1.0</commons.release.version>
+    <commons.release.name>commons-proxy-${commons.release.version}</commons.release.name>
+    <commons.rc.version>RC1</commons.rc.version>
+    <commons.jira.id>PROXY</commons.jira.id>
+    <commons.jira.pid>12310731</commons.jira.pid>
+    <commons.scmPubUrl>https://svn.apache.org/repos/infra/websites/production/commons/content/proper/${commons.site.path}</commons.scmPubUrl>
+
+    <asm.version>4.2</asm.version>
+    <ant.version>1.9.3</ant.version>
+    <checkstyle.version>2.11</checkstyle.version>
+  </properties>
+
+  <developers>
+    <developer>
+      <id>jcarman</id>
+      <name>James Carman</name>
+      <email>james@carmanconsulting.com</email>
+      <organization>Carman Consulting, Inc.</organization>
+      <roles>
+        <role>admin</role>
+        <role>designer</role>
+        <role>developer</role>
+      </roles>
+      <url>http://www.carmanconsulting.com/</url>
+      <timezone>-5</timezone>
+    </developer>
+    <developer>
+      <id>knut</id>
+      <name>Knut Wannheden</name>
+      <email>knut@apache.org</email>
+      <roles>
+        <role>designer</role>
+        <role>developer</role>
+      </roles>
+      <timezone>+1</timezone>
+    </developer>
+    <developer>
+      <name>J&#246;rg Hohwiller</name>
+      <email>hohwille@users.sourceforge.net</email>
+      <organization/>
+      <roles>
+        <role>mavenizer</role>
+        <role>developer</role>
+      </roles>
+      <url></url>
+    </developer>
+    <developer>
+      <id>mbenson</id>
+      <name>Matt Benson</name>
+      <email>mbenson@apache.org</email>
+      <roles>
+        <role>developer</role>
+        <role>release manager</role>
+      </roles>
+    </developer>
+  </developers>
+
+  <contributors>
+    <contributor>
+      <name>Howard M. Lewis Ship</name>
+      <email>hlship@apache.org</email>
+      <organization/>
+      <roles>
+        <role>advisor</role>
+      </roles>
+      <url>http://www.howardlewisship.com/</url>
+    </contributor>
+    <contributor>
+      <name>J&#246;rg Schaible</name>
+      <email>joerg.schaible@gmx.de</email>
+      <organization/>
+      <roles>
+        <role>advisor</role>
+      </roles>
+    </contributor>
+    <contributor>
+      <name>Mark Struberg</name>
+    </contributor>
+    <contributor>
+      <name>Romain Manni-Bucau</name>
+    </contributor>
+  </contributors>
+
+  <scm>
+    <connection>scm:svn:http://svn.apache.org/repos/asf/commons/proper/proxy/trunk/</connection>
+    <developerConnection>scm:svn:https://svn.apache.org/repos/asf/commons/proper/proxy/trunk/</developerConnection>
+    <url>http://svn.apache.org/repos/asf/commons/proper/proxy/trunk/</url>
+  </scm>
+
+  <distributionManagement>
+    <site>
+      <id>commons.site</id>
+      <name>Apache Commons site SVN</name>
+      <url>scm:svn:${commons.scmPubUrl}</url>
+    </site>
+  </distributionManagement>
+
+  <dependencyManagement>
+    <dependencies>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-core</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-core</artifactId>
+        <classifier>sources</classifier>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-core</artifactId>
+        <classifier>javadoc</classifier>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-asm4</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-asm4</artifactId>
+        <classifier>sources</classifier>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-asm4</artifactId>
+        <classifier>javadoc</classifier>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-cglib</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-cglib</artifactId>
+        <classifier>sources</classifier>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-cglib</artifactId>
+        <classifier>javadoc</classifier>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-javassist</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-javassist</artifactId>
+        <classifier>sources</classifier>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-javassist</artifactId>
+        <classifier>javadoc</classifier>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-jdk</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-jdk</artifactId>
+        <classifier>sources</classifier>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-jdk</artifactId>
+        <classifier>javadoc</classifier>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>${project.groupId}</groupId>
+        <artifactId>commons-proxy2-test</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+      <dependency>
         <groupId>org.apache.commons</groupId>
-        <artifactId>commons-parent</artifactId>
-        <version>25</version>
-    </parent>
-    <artifactId>commons-proxy2-parent</artifactId>
-    <version>2.0-SNAPSHOT</version>
-    <name>Commons Proxy Parent</name>
-    <description>Java library for dynamic proxying</description>
-    <url>http://commons.apache.org/proxy/</url>
-    <inceptionYear>2005</inceptionYear>
+        <artifactId>commons-lang3</artifactId>
+        <version>3.3.1</version>
+      </dependency>
+      <dependency>
+        <groupId>cglib</groupId>
+        <artifactId>cglib-nodep</artifactId>
+        <version>2.1_3</version>
+      </dependency>
+      <dependency>
+        <groupId>jboss</groupId>
+        <artifactId>javassist</artifactId>
+        <version>3.7.ga</version>
+      </dependency>
+      <dependency>
+        <groupId>org.javassist</groupId>
+        <artifactId>javassist</artifactId>
+        <version>3.18.1.GA</version>
+      </dependency>
+      <dependency>
+        <groupId>org.ow2.asm</groupId>
+        <artifactId>asm</artifactId>
+        <version>${asm.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>org.ow2.asm</groupId>
+        <artifactId>asm-commons</artifactId>
+        <version>${asm.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>jmock</groupId>
+        <artifactId>jmock</artifactId>
+        <version>1.0.1</version>
+        <scope>test</scope>
+      </dependency>
+      <dependency>
+        <groupId>junit</groupId>
+        <artifactId>junit</artifactId>
+        <version>4.11</version>
+        <scope>test</scope>
+      </dependency>
+    </dependencies>
+  </dependencyManagement>
 
-    <issueManagement>
-        <system>JIRA</system>
-        <url>http://issues.apache.org/jira/browse/PROXY</url>
-    </issueManagement>
+  <build>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-dependency-plugin</artifactId>
+          <version>2.8</version>
+        </plugin>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-enforcer-plugin</artifactId>
+          <version>1.3.1</version>
+        </plugin>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-pmd-plugin</artifactId>
+          <version>3.0.1</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>build-helper-maven-plugin</artifactId>
+          <version>1.8</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>findbugs-maven-plugin</artifactId>
+          <version>2.5.3</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-antrun-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>copy-notices</id>
+            <phase>generate-sources</phase>
+            <goals>
+              <goal>run</goal>
+            </goals>
+            <configuration>
+              <target xmlns:if="ant:if" xmlns:unless="ant:unless">
+                <presetdef name="truth">
+                  <condition value="true" else="false" />
+                </presetdef>
 
-    <developers>
-        <developer>
-            <id>jcarman</id>
-            <name>James Carman</name>
-            <email>james@carmanconsulting.com</email>
-            <organization>Carman Consulting, Inc.</organization>
-            <roles>
-                <role>admin</role>
-                <role>designer</role>
-                <role>developer</role>
-            </roles>
-            <url>http://www.carmanconsulting.com/</url>
-            <timezone>-5</timezone>
-        </developer>
-        <developer>
-            <id>knut</id>
-            <name>Knut Wannheden</name>
-            <email>knut@apache.org</email>
-            <roles>
-                <role>designer</role>
-                <role>developer</role>
-            </roles>
-            <timezone>+1</timezone>
-        </developer>
-        <developer>
-            <name>J&#246;rg Hohwiller</name>
-            <email>hohwille@users.sourceforge.net</email>
-            <organization/>
-            <roles>
-                <role>mavenizer</role>
-                <role>developer</role>
-            </roles>
-            <url></url>
-        </developer>
-        <developer>
-            <name>Matt Benson</name>
-            <email>mbenson@apache.org</email>
-            <roles>
-                <role>developer</role>
-            </roles>
-        </developer>
-    </developers>
+                <macrodef name="seek">
+                  <attribute name="name" />
+                  <attribute name="addto" />
+                  <sequential>
+                    <union id="@{name}-ws" />
+                    <step dir="${user.dir}" name="@{name}" addto="@{addto}" ws="@{name}-ws" />
+                  </sequential>
+                </macrodef>
 
-    <contributors>
-        <contributor>
-            <name>Howard M. Lewis Ship</name>
-            <email>hlship@apache.org</email>
-            <organization/>
-            <roles>
-                <role>advisor</role>
-            </roles>
-            <url>http://www.howardlewisship.com/</url>
-        </contributor>
-        <contributor>
-            <name>J&#246;rg Schaible</name>
-            <email>joerg.schaible@gmx.de</email>
-            <organization/>
-            <roles>
-                <role>advisor</role>
-            </roles>
-        </contributor>
-        <contributor>
-            <name>Mark Struberg</name>
-        </contributor>
-        <contributor>
-            <name>Romain Manni-Bucau</name>
-        </contributor>
-    </contributors>
+                <macrodef name="step">
+                  <attribute name="name" />
+                  <attribute name="dir" />
+                  <attribute name="addto" />
+                  <attribute name="ws" />
+                  <sequential>
+                    <local name="seenDir" />
+                    <truth property="seenDir">
+                      <resourcecount when="gt" count="0">
+                        <intersect id="intersection">
+                          <resources refid="@{ws}" />
+                          <file name="@{dir}" />
+                        </intersect>
+                      </resourcecount>
+                    </truth>
+                    <sequential unless:true="${seenDir}">
+                      <augment id="@{ws}">
+                        <file file="@{dir}" />
+                      </augment>
+                      <local name="exists" />
+                      <truth property="exists">
+                        <available file="@{dir}/@{name}" />
+                      </truth>
 
-    <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/commons/proper/proxy/trunk/</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/commons/proper/proxy/trunk/</developerConnection>
-        <url>http://svn.apache.org/repos/asf/commons/proper/proxy/trunk/</url>
-    </scm>
+                      <sequential if:true="${exists}">
+                        <augment id="@{addto}">
+                          <file file="@{dir}/@{name}" />
+                        </augment>
+                      </sequential>
+                      <sequential unless:true="${exists}">
+                        <local name="parent.dir" />
+                        <dirname property="parent.dir" file="@{dir}" />
+                        <step dir="${parent.dir}" name="@{name}" addto="@{addto}" ws="@{ws}" />
+                      </sequential>
+                    </sequential>
+                  </sequential>
+                </macrodef>
 
-    <build>
-        <resources>
-            <resource>
-                <directory>src/main/resources</directory>
-                <excludes>
-                    <exclude>**/*.java</exclude>
-                </excludes>
-            </resource>
-        </resources>
-        <plugins>
-            <plugin>
-                <artifactId>maven-assembly-plugin</artifactId>
-                <configuration>
-                    <descriptors>
-                        <descriptor>src/assembly/bin.xml</descriptor>
-                        <descriptor>src/assembly/src.xml</descriptor>
-                    </descriptors>
-                    <tarLongFileMode>gnu</tarLongFileMode>
-                </configuration>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-checkstyle-plugin</artifactId>
-                <dependencies>
-                    <dependency>
-                        <groupId>${project.groupId}</groupId>
-                        <artifactId>commons-proxy2-build-tools</artifactId>
-                        <version>${project.version}</version>
-                    </dependency>
-                </dependencies>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-site-plugin</artifactId>
-                <version>3.3</version>
-                <dependencies>
-                  <dependency>
-                    <groupId>org.apache.maven.doxia</groupId>
-                    <artifactId>doxia-module-markdown</artifactId>
-                    <version>1.3</version>
-                  </dependency>
-                </dependencies>
-            </plugin>
-        </plugins>
-    </build>
+                <truth property="pom-only">
+                  <equals arg1="${project.packaging}" arg2="pom" />
+                </truth>
+                <sequential unless:true="${pom-only}">
+                  <union id="notices" />
+                  <seek name="LICENSE.txt" addto="notices" />
+                  <seek name="NOTICE.txt" addto="notices" />
 
-    <reporting>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-checkstyle-plugin</artifactId>
-                <configuration>
-                    <configLocation>org/apache/commons/proxy2/checkstyle.xml</configLocation>
-                    <headerLocation>org/apache/commons/proxy2/license-header.txt</headerLocation>
-                </configuration>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-javadoc-plugin</artifactId>
+                  <mkdir dir="${project.build.directory}/generated-resources/notices/META-INF" />
+                  <copy verbose="true" todir="${project.build.directory}/generated-resources/notices/META-INF">
+                    <resources refid="notices" />
+                  </copy>
 
-                <configuration>
-                    <linksource>true</linksource>
-                    <links>
-                        <link>http://java.sun.com/j2se/1.4.2/docs/api/</link>
-                        <link>http://ws.apache.org/xmlrpc/apidocs/</link>
-                        <link>http://www.csg.is.titech.ac.jp/~chiba/javassist/html</link>
-                    </links>
-                </configuration>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-surefire-report-plugin</artifactId>
-                <configuration>
-                    <aggregate>true</aggregate>
-                </configuration>
-            </plugin>
-        </plugins>
-    </reporting>
+                  <mkdir dir="${project.build.directory}/generated-test-resources/notices/META-INF" />
+                  <copy verbose="true" todir="${project.build.directory}/generated-test-resources/notices/META-INF">
+                    <resources refid="notices" />
+                  </copy>
 
-    <distributionManagement>
-        <site>
-            <id>apache.website</id>
-            <name>Apache Website</name>
-            <url>scp://people.apache.org/www/commons.apache.org/proper/proxy/</url>
-        </site>
-    </distributionManagement>
-
-    <dependencyManagement>
+                  <mkdir dir="${project.build.directory}/apidocs/META-INF" />
+                  <copy verbose="true" todir="${project.build.directory}/apidocs/META-INF">
+                    <resources refid="notices" />
+                  </copy>
+                </sequential>
+              </target>
+            </configuration>
+          </execution>
+        </executions>
         <dependencies>
-            <dependency>
-                <groupId>org.apache.commons</groupId>
-                <artifactId>commons-lang3</artifactId>
-                <version>3.0</version>
-            </dependency>
-            <dependency>
-                <groupId>cglib</groupId>
-                <artifactId>cglib-nodep</artifactId>
-                <version>2.1_3</version>
-            </dependency>
-            <dependency>
-                <groupId>jboss</groupId>
-                <artifactId>javassist</artifactId>
-                <version>3.0</version>
-            </dependency>
-            <dependency>
-              <groupId>org.ow2.asm</groupId>
-              <artifactId>asm</artifactId>
-              <version>${asm.version}</version>
-            </dependency>
-            <dependency>
-              <groupId>org.ow2.asm</groupId>
-              <artifactId>asm-commons</artifactId>
-              <version>${asm.version}</version>
-            </dependency>
-            <dependency>
-                <groupId>jmock</groupId>
-                <artifactId>jmock</artifactId>
-                <version>1.0.1</version>
-            </dependency>
-            <dependency>
-                <groupId>junit</groupId>
-                <artifactId>junit</artifactId>
-                <version>4.8.1</version>
-            </dependency>
+          <dependency>
+            <groupId>org.apache.ant</groupId>
+            <artifactId>ant</artifactId>
+            <version>${ant.version}</version>
+          </dependency>
         </dependencies>
-    </dependencyManagement>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-checkstyle-plugin</artifactId>
+        <version>${checkstyle.version}</version>
+        <dependencies>
+          <dependency>
+            <groupId>${project.groupId}</groupId>
+            <artifactId>commons-proxy2-build-tools</artifactId>
+            <version>${project.version}</version>
+          </dependency>
+        </dependencies>
+        <configuration>
+          <configLocation>org/apache/commons/proxy2/checkstyle.xml</configLocation>
+          <headerLocation>org/apache/commons/proxy2/license-header.txt</headerLocation>
+        </configuration>
+      </plugin>
+      <!-- Unfortunately the much simpler
+           <prerequisites><maven>3.0</maven></prerequisites>  
+           is not inherited so we have to use the enforcer plugin
+      -->
+      <plugin>
+        <inherited>true</inherited>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-enforcer-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>enforce-maven-3</id>
+            <goals>
+              <goal>enforce</goal>
+            </goals>
+            <configuration>
+              <rules>
+                <!-- Problem with Maven 3.2.x filed as
+                     http://jira.codehaus.org/browse/MNG-5601
+                 -->
+                <requireMavenVersion>
+                  <version>[3.0.0,3.2.0)</version>
+                </requireMavenVersion>
+              </rules>
+              <fail>true</fail>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-jar-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>attach-test-jar</id>
+            <phase>package</phase>
+            <goals>
+              <goal>test-jar</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <skipIfEmpty>true</skipIfEmpty>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-javadoc-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>create-javadoc-jar</id>
+            <phase>package</phase>
+            <goals>
+              <goal>javadoc</goal>
+              <goal>jar</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <source>${maven.compiler.source}</source>
+          <linksource>true</linksource>
+          <links>
+            <link>http://docs.oracle.com/javase/6/docs/api/</link>
+            <link>http://www.csg.is.titech.ac.jp/~chiba/javassist/html</link>
+          </links>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-pmd-plugin</artifactId>
+        <dependencies>
+          <dependency>
+            <groupId>${project.groupId}</groupId>
+            <artifactId>commons-weaver-build-tools</artifactId>
+            <version>${project.version}</version>
+          </dependency>
+        </dependencies>
+        <configuration>
+          <rulesets>
+            <!--ruleset>/org/apache/commons/proxy2/pmd.xml</ruleset-->
+          </rulesets>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-release-plugin</artifactId>
+        <configuration>
+          <autoVersionSubmodules>true</autoVersionSubmodules>
+          <tag>${commons.release.version}_${commons.rc.version}</tag>
+          <preparationGoals>changes:changes-check</preparationGoals>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-scm-publish-plugin</artifactId>
+        <configuration>
+          <content>${project.build.directory}/staging</content>
+          <ignorePathsToDelete>
+            <ignorePathToDelete>javadocs</ignorePathToDelete>
+          </ignorePathsToDelete>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-site-plugin</artifactId>
+        <version>3.3</version>
+        <dependencies>
+          <dependency>
+            <groupId>org.apache.maven.doxia</groupId>
+            <artifactId>doxia-module-markdown</artifactId>
+            <version>1.3</version>
+          </dependency>
+        </dependencies>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-source-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>attach-sources</id>
+            <goals>
+              <goal>jar-no-fork</goal>
+            </goals>
+          </execution>
+          <execution>
+            <id>attach-test-sources</id>
+            <goals>
+              <goal>test-jar-no-fork</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>build-helper-maven-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>add-source-notices</id>
+            <phase>generate-resources</phase>
+            <goals>
+              <goal>add-resource</goal>
+            </goals>
+            <configuration>
+              <resources>
+                <resource>
+                  <directory>${project.build.directory}/generated-resources/notices</directory>
+                </resource>
+              </resources>
+            </configuration>
+          </execution>
+          <execution>
+            <id>add-test-notices</id>
+            <phase>generate-test-resources</phase>
+            <goals>
+              <goal>add-test-resource</goal>
+            </goals>
+            <configuration>
+              <resources>
+                <resource>
+                  <directory>${project.build.directory}/generated-test-resources/notices</directory>
+                </resource>
+              </resources>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>findbugs-maven-plugin</artifactId>
+        <dependencies>
+          <dependency>
+            <groupId>${project.groupId}</groupId>
+            <artifactId>commons-weaver-build-tools</artifactId>
+            <version>${project.version}</version>
+          </dependency>
+        </dependencies>
+        <configuration>
+          <!--excludeFilterFile>/org/apache/commons/proxy2/findbugs-exclude-filter.xml</excludeFilterFile-->
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
 
-    <properties>
-        <maven.compile.source>1.6</maven.compile.source>
-        <maven.compile.target>1.6</maven.compile.target>
-        <commons.componentid>proxy</commons.componentid>
-        <commons.release.version>1.0</commons.release.version>
-        <commons.binary.suffix></commons.binary.suffix>
-        <commons.jira.id>PROXY</commons.jira.id>
-        <commons.jira.pid>12310731</commons.jira.pid>
-        <asm.version>4.1</asm.version>
-    </properties>
+  <reporting>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-checkstyle-plugin</artifactId>
+        <configuration>
+          <configLocation>org/apache/commons/proxy2/checkstyle.xml</configLocation>
+          <headerLocation>org/apache/commons/proxy2/license-header.txt</headerLocation>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-javadoc-plugin</artifactId>
+        <configuration>
+          <source>${maven.compiler.source}</source>
+          <linksource>true</linksource>
+          <links>
+            <link>http://docs.oracle.com/javase/6/docs/api/</link>
+            <link>http://www.csg.is.titech.ac.jp/~chiba/javassist/html</link>
+          </links>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-surefire-report-plugin</artifactId>
+        <configuration>
+          <aggregate>true</aggregate>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.rat</groupId>
+        <artifactId>apache-rat-plugin</artifactId>
+        <inherited>false</inherited>
+        <configuration>
+          <excludeSubProjects>false</excludeSubProjects>
+          <excludes>
+            <exclude>**/target/**</exclude>
+            <exclude>**/.*</exclude>
+            <exclude>**/.*/**</exclude>
+          </excludes>
+        </configuration>
+      </plugin>
+    </plugins>
+  </reporting>
+
+  <profiles>
+    <profile>
+      <id>release</id>
+      <build>
+        <plugins>
+          <plugin>
+            <artifactId>maven-assembly-plugin</artifactId>
+            <inherited>false</inherited>
+            <executions>
+              <execution>
+                <goals>
+                  <goal>single</goal>
+                </goals>
+                <!-- disable assembly:single from commons-parent
+                     release profile; multimodule assembly handled
+                     by dist module -->
+                <phase />
+              </execution>
+            </executions>
+          </plugin>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-source-plugin</artifactId>
+            <executions>
+              <execution>
+                <id>create-source-jar</id>
+                <!-- suppress execution specified by parent profile -->
+                <phase />
+              </execution>
+            </executions>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+    <profile>
+      <id>site</id>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-javadoc-plugin</artifactId>
+            <configuration>
+              <aggregate>true</aggregate>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+  </profiles>
+
+  <modules>
+    <module>build-tools</module>
+    <module>core</module>
+    <module>jdk</module>
+    <module>asm4</module>
+    <module>javassist</module>
+    <module>cglib</module>
+    <module>test</module>
+    <module>dist</module>
+  </modules>
 </project>
diff --git a/src/assembly/bin.xml b/src/assembly/bin.xml
deleted file mode 100644
index ba78bbd..0000000
--- a/src/assembly/bin.xml
+++ /dev/null
@@ -1,45 +0,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>
-        <format>tar.gz</format>
-        <format>zip</format>
-    </formats>
-    <includeSiteDirectory>false</includeSiteDirectory>
-    <fileSets>
-        <fileSet>
-            <includes>
-                <include>LICENSE.txt</include>
-                <include>NOTICE.txt</include>
-                <include>RELEASE-NOTES.txt</include>
-            </includes>
-        </fileSet>
-        <fileSet>
-            <directory>target</directory>
-            <outputDirectory></outputDirectory>
-            <includes>
-                <include>*.jar</include>
-            </includes>
-        </fileSet>
-        <fileSet>
-            <directory>target/site/apidocs</directory>
-            <outputDirectory>apidocs</outputDirectory>
-        </fileSet>
-    </fileSets>
-</assembly>
diff --git a/src/assembly/src.xml b/src/assembly/src.xml
deleted file mode 100644
index 5a7cc0d..0000000
--- a/src/assembly/src.xml
+++ /dev/null
@@ -1,42 +0,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>
-        <format>tar.gz</format>
-        <format>zip</format>
-    </formats>
-    <baseDirectory>${project.artifactId}-${project.version}-src</baseDirectory>
-    <fileSets>
-        <fileSet>
-            <includes>
-                <include>checkstyle.xml</include>
-                <include>LICENSE.txt</include>
-                <include>license-header.txt</include>
-                <include>NOTICE.txt</include>
-                <include>pom.xml</include>
-                <include>PROPOSAL.html</include>
-                <include>RELEASE-NOTES.txt</include>
-                <include>STATUS.html</include>
-            </includes>
-        </fileSet>
-        <fileSet>
-            <directory>src</directory>
-        </fileSet>
-    </fileSets>
-</assembly>
diff --git a/test/pom.xml b/test/pom.xml
index 7f42ec8..cb55f21 100644
--- a/test/pom.xml
+++ b/test/pom.xml
@@ -29,8 +29,6 @@
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
-            <version>4.8.1</version>
-            <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
@@ -47,8 +45,6 @@
         <dependency>
             <groupId>cglib</groupId>
             <artifactId>cglib-nodep</artifactId>
-            <version>2.1_3</version>
-            <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
