Index: pom.xml
===================================================================
--- pom.xml	(revision 33687)
+++ pom.xml	(working copy)
@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <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>
+
   <groupId>org.jvnet.hudson</groupId>
   <artifactId>hudson</artifactId>
   <version>1.7</version>
@@ -8,39 +9,41 @@
 
   <name>Hudson</name>
   <url>https://hudson.dev.java.net/</url>
-  
+
   <issueManagement>
-      <system>JIRA</system>
-      <url>http://issues.hudson-ci.org/secure/Dashboard.jspa</url>
+    <system>JIRA</system>
+    <url>http://issues.hudson-ci.org/secure/Dashboard.jspa</url>
   </issueManagement>
+
   <ciManagement>
-      <system>Hudson</system>
-      <url>http://hudson.glassfish.org/job/hudson</url>
+    <system>Hudson</system>
+    <url>http://hudson.glassfish.org/job/hudson</url>
   </ciManagement>
+
   <mailingLists>
-      <mailingList>
-          <name>Hudson developer discussion list</name>
-          <subscribe>dev-subscribe@hudson.dev.java.net</subscribe>
-          <unsubscribe>dev-unsubscribe@hudson.dev.java.net</unsubscribe>
-          <post>dev@hudson.dev.java.net</post>
-          <archive>http://www.nabble.com/Hudson-dev-f25543.html</archive>
-      </mailingList>
-      <mailingList>
-          <name>Hudson user discussion list</name>
-          <subscribe>users-subscribe@hudson.dev.java.net</subscribe>
-          <unsubscribe>users-unsubscribe@hudson.dev.java.net</unsubscribe>
-          <post>users@hudson.dev.java.net</post>
-          <archive>http://www.nabble.com/Hudson-users-f16872.html</archive>
-      </mailingList>
-      <mailingList>
-          <name>Hudson Japanese user discussion list</name>
-          <subscribe>ja-subscribe@hudson.dev.java.net</subscribe>
-          <unsubscribe>ja-unsubscribe@hudson.dev.java.net</unsubscribe>
-          <post>ja@hudson.dev.java.net</post>
-          <archive>http://www.nabble.com/Hudson-ja-f29991.html</archive>
-      </mailingList>
+    <mailingList>
+      <name>Hudson developer discussion list</name>
+      <subscribe>dev-subscribe@hudson.dev.java.net</subscribe>
+      <unsubscribe>dev-unsubscribe@hudson.dev.java.net</unsubscribe>
+      <post>dev@hudson.dev.java.net</post>
+      <archive>http://www.nabble.com/Hudson-dev-f25543.html</archive>
+    </mailingList>
+    <mailingList>
+      <name>Hudson user discussion list</name>
+      <subscribe>users-subscribe@hudson.dev.java.net</subscribe>
+      <unsubscribe>users-unsubscribe@hudson.dev.java.net</unsubscribe>
+      <post>users@hudson.dev.java.net</post>
+      <archive>http://www.nabble.com/Hudson-users-f16872.html</archive>
+    </mailingList>
+    <mailingList>
+      <name>Hudson Japanese user discussion list</name>
+      <subscribe>ja-subscribe@hudson.dev.java.net</subscribe>
+      <unsubscribe>ja-unsubscribe@hudson.dev.java.net</unsubscribe>
+      <post>ja@hudson.dev.java.net</post>
+      <archive>http://www.nabble.com/Hudson-ja-f29991.html</archive>
+    </mailingList>
   </mailingLists>
- 
+
   <scm>
     <connection>scm:svn:https://guest@svn.dev.java.net/svn/hudson/trunk/hudson/</connection>
     <developerConnection>scm:svn:https://svn.dev.java.net/svn/hudson/trunk/hudson/</developerConnection>
@@ -82,7 +85,8 @@
     </repository>
     <snapshotRepository>
       <!-- prevent accidental deployment of SNAPSHOTS to repository -->
-      <id>local-repo</id><!-- M3 says: "'distributionManagement.snapshotRepository.id' must not be 'local', this identifier is reserved." -->
+      <id>local-repo</id>
+      <!-- M3 says: "'distributionManagement.snapshotRepository.id' must not be 'local', this identifier is reserved." -->
       <url>file:.</url>
     </snapshotRepository>
   </distributionManagement>
@@ -96,13 +100,11 @@
     </dependency>
   </dependencies>
 
-
   <build>
     <plugins>
       <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-enforcer-plugin</artifactId>
-	<version>1.0-beta-1</version>
+        <version>${maven-enforcer-plugin.version}</version>
         <executions>
           <execution>
             <phase>validate</phase>
@@ -114,6 +116,7 @@
       </plugin>
       <plugin>
         <artifactId>maven-compiler-plugin</artifactId>
+        <version>${maven-compiler-plugin.version}</version>
         <configuration>
           <source>1.5</source>
           <target>1.5</target>
@@ -121,14 +124,14 @@
       </plugin>
       <plugin>
         <artifactId>maven-idea-plugin</artifactId>
-        <version>2.1</version>
+        <version>${maven-idea-plugin.version}</version>
         <configuration>
           <jdkName>JDK1.5</jdkName>
         </configuration>
       </plugin>
       <plugin>
         <artifactId>maven-eclipse-plugin</artifactId>
-        <version>2.7</version>
+        <version>${maven-eclipse-plugin.version}</version>
       </plugin>
     </plugins>
     <extensions>
@@ -138,6 +141,198 @@
         <version>1.8</version>
       </extension>
     </extensions>
+    <pluginManagement>
+      <plugins>
+        <plugin>
+          <artifactId>maven-assembly-plugin</artifactId>
+          <version>${maven-assembly-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-changelog-plugin</artifactId>
+          <version>${maven-changelog-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-checkstyle-plugin</artifactId>
+          <version>${maven-checkstyle-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-clean-plugin</artifactId>
+          <version>${maven-clean-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-compiler-plugin</artifactId>
+          <version>${maven-compiler-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-dependency-plugin</artifactId>
+          <version>${maven-dependency-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-deploy-plugin</artifactId>
+          <version>${maven-deploy-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-doap-plugin</artifactId>
+          <version>${maven-doap-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-eclipse-plugin</artifactId>
+          <version>${maven-eclipse-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-enforcer-plugin</artifactId>
+          <version>${maven-enforcer-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-help-plugin</artifactId>
+          <version>${maven-help-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-idea-plugin</artifactId>
+          <version>${maven-idea-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-install-plugin</artifactId>
+          <version>${maven-install-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-jar-plugin</artifactId>
+          <version>${maven-jar-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-javadoc-plugin</artifactId>
+          <version>${maven-javadoc-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-jxr-plugin</artifactId>
+          <version>${maven-jxr-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-pmd-plugin</artifactId>
+          <version>${maven-pmd-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-project-info-reports-plugin</artifactId>
+          <version>${maven-project-info-reports-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-reactor-plugin</artifactId>
+          <version>${maven-reactor-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-release-plugin</artifactId>
+          <version>${maven-release-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-remote-resources-plugin</artifactId>
+          <version>${maven-remote-resources-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-resources-plugin</artifactId>
+          <version>${maven-resources-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-site-plugin</artifactId>
+          <version>${maven-site-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-source-plugin</artifactId>
+          <version>${maven-source-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-surefire-plugin</artifactId>
+          <version>${maven-surefire-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-surefire-report-plugin</artifactId>
+          <version>${maven-surefire-report-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-war-plugin</artifactId>
+          <version>${maven-war-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>apt-maven-plugin</artifactId>
+          <version>${apt-maven-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>axistools-maven-plugin</artifactId>
+          <version>${axistools-maven-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>buildnumber-maven-plugin</artifactId>
+          <version>${buildnumber-maven-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>build-helper-maven-plugin</artifactId>
+          <version>${build-helper-maven-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.cargo</groupId>
+          <artifactId>cargo-maven2-plugin</artifactId>
+          <version>${cargo-maven2-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>cobertura-maven-plugin</artifactId>
+          <version>${cobertura-maven-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>exec-maven-plugin</artifactId>
+          <version>${exec-maven-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>findbugs-maven-plugin</artifactId>
+          <version>${findbugs-maven-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>gwt-maven-plugin</artifactId>
+          <version>${gwt-maven-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>javancss-maven-plugin</artifactId>
+          <version>${javancss-maven-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>jdepend-maven-plugin</artifactId>
+          <version>${jdepend-maven-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>openjpa-maven-plugin</artifactId>
+          <version>${openjpa-maven-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>taglist-maven-plugin</artifactId>
+          <version>${taglist-maven-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>versions-maven-plugin</artifactId>
+          <version>${versions-maven-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.codehaus.mojo</groupId>
+          <artifactId>xml-maven-plugin</artifactId>
+          <version>${xml-maven-plugin.version}</version>
+        </plugin>
+        <plugin>
+          <groupId>org.mortbay.jetty</groupId>
+          <artifactId>maven-jetty-plugin</artifactId>
+          <version>${maven-jetty-plugin.version}</version>
+        </plugin>
+      </plugins>
+    </pluginManagement>
   </build>
 
   <modules>
@@ -146,7 +341,7 @@
     <module>plugins</module>
     <module>pxeboot</module>
   </modules>
-  
+
   <profiles>
     <profile>
       <id>always-check-remote-repositories</id>
@@ -155,11 +350,59 @@
       </properties>
     </profile>
   </profiles>
+
   <properties>
     <!-- by default only check remote repositories once per week -->
     <maven.repository.update.freqency>interval:10080</maven.repository.update.freqency>
 
     <!-- the version of Maven that we embed in Hudson -->
     <maven.version>2.0.4</maven.version>
+
+    <!-- define all plugin versions as properties so individual hierarchies can easily override -->
+    <maven-antrun-plugin.version>1.3</maven-antrun-plugin.version>
+    <maven-assembly-plugin.version>2.2-beta-5</maven-assembly-plugin.version>
+    <maven-changelog-plugin.version>2.1</maven-changelog-plugin.version>
+    <maven-checkstyle-plugin.version>2.5</maven-checkstyle-plugin.version>
+    <maven-clean-plugin.version>2.4.1</maven-clean-plugin.version>
+    <maven-compiler-plugin.version>2.3.1</maven-compiler-plugin.version>
+    <maven-dependency-plugin.version>2.1</maven-dependency-plugin.version>
+    <maven-deploy-plugin.version>2.5</maven-deploy-plugin.version>
+    <maven-doap-plugin.version>1.0</maven-doap-plugin.version>
+    <maven-eclipse-plugin.version>2.7</maven-eclipse-plugin.version>
+    <maven-enforcer-plugin.version>1.0-beta-1</maven-enforcer-plugin.version>
+    <maven-help-plugin.version>2.1.1</maven-help-plugin.version>
+    <maven-idea-plugin.version>2.1</maven-idea-plugin.version>
+    <maven-install-plugin.version>2.3.1</maven-install-plugin.version>
+    <maven-javadoc-plugin.version>2.6.1</maven-javadoc-plugin.version>
+    <maven-jar-plugin.version>2.3.1</maven-jar-plugin.version>
+    <maven-jetty-plugin.version>6.1.23</maven-jetty-plugin.version>
+    <maven-jxr-plugin.version>2.1</maven-jxr-plugin.version>
+    <maven-pmd-plugin.version>2.4</maven-pmd-plugin.version>
+    <maven-project-info-reports-plugin.version>2.1.2</maven-project-info-reports-plugin.version>
+    <maven-reactor-plugin.version>1.0</maven-reactor-plugin.version>
+    <maven-release-plugin.version>2.0</maven-release-plugin.version>
+    <maven-remote-resources-plugin.version>1.1</maven-remote-resources-plugin.version>
+    <maven-resources-plugin.version>2.4.3</maven-resources-plugin.version>
+    <maven-site-plugin.version>2.1</maven-site-plugin.version>
+    <!-- Do not go to 2.1.2: http://jira.codehaus.org/browse/MSOURCES-30 -->
+    <maven-source-plugin.version>2.1.1</maven-source-plugin.version>
+    <maven-surefire-plugin.version>2.5</maven-surefire-plugin.version>
+    <maven-surefire-report-plugin.version>2.5</maven-surefire-report-plugin.version>
+    <maven-war-plugin.version>2.1-beta-1</maven-war-plugin.version>
+    <apt-maven-plugin.version>1.0-alpha-3</apt-maven-plugin.version>
+    <axistools-maven-plugin.version>1.3</axistools-maven-plugin.version>
+    <buildnumber-maven-plugin.version>1.0-beta-4</buildnumber-maven-plugin.version>
+    <build-helper-maven-plugin.version>1.5</build-helper-maven-plugin.version>
+    <cargo-maven2-plugin.version>1.0.1-alpha-2</cargo-maven2-plugin.version>
+    <cobertura-maven-plugin.version>2.3</cobertura-maven-plugin.version>
+    <exec-maven-plugin.version>1.2</exec-maven-plugin.version>
+    <findbugs-maven-plugin.version>2.3.1</findbugs-maven-plugin.version>
+    <gwt-maven-plugin.version>1.2</gwt-maven-plugin.version>
+    <javancss-maven-plugin.version>2.0</javancss-maven-plugin.version>
+    <jdepend-maven-plugin.version>2.0-beta-2</jdepend-maven-plugin.version>
+    <openjpa-maven-plugin.version>1.1</openjpa-maven-plugin.version>
+    <taglist-maven-plugin.version>2.4</taglist-maven-plugin.version>
+    <versions-maven-plugin.version>1.1</versions-maven-plugin.version>
+    <xml-maven-plugin.version>1.0-beta-3</xml-maven-plugin.version>
   </properties>
 </project>
