<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">










<html>
  <head>
    <title>Archiva :: Modules - Project Plugin Management</title>
    <style type="text/css" media="all">
      @import url("./css/maven-base.css");
      @import url("./css/maven-theme.css");
      @import url("./css/site.css");
    </style>
    <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
                            <?xml version="1.0" encoding="UTF-8"?>
<script type="text/javascript">var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));</script>
                                <?xml version="1.0" encoding="UTF-8"?>
<script type="text/javascript">var pageTracker = _gat._getTracker("UA-140879-5");
pageTracker._initData();
pageTracker._trackPageview();</script>
                    </head>
  <body class="composite">
    <div id="banner">
                  <a href="../../" id="bannerLeft">
    
                                            <img src="../../images/archiva.png" alt="" />
    
            </a>
                        <a href="http://www.apache.org/" id="bannerRight">
    
                                    <img src="http://www.apache.org/images/asf_logo_wide.png" alt="" />
    
            </a>
            <div class="clear">
        <hr/>
      </div>
    </div>
    <div id="breadcrumbs">
          
  

  
    
  
  
            <div class="xleft">
          
          <a href="http://www.apache.org/">Apache</a>
              &gt;
      
          <a href="../../">Archiva</a>
              &gt;
      
          Archiva :: Modules
                </div>
            <div class="xright">      
  

  
    
  
  
            &nbsp;| Last Published: 27 May 2011
            </div>
      <div class="clear">
        <hr/>
      </div>
    </div>
    <div id="leftColumn">
      <div id="navcolumn">
           
  

  
    
  
  
                   <h5>Modules</h5>
        <ul>
              
    <li class="none">
              <a href="archiva-base/index.html">Archiva Base</a>
        </li>
              
    <li class="none">
              <a href="archiva-database/index.html">Archiva Database</a>
        </li>
              
    <li class="none">
              <a href="archiva-reporting/index.html">Archiva Reporting</a>
        </li>
              
    <li class="none">
              <a href="archiva-scheduled/index.html">Archiva Base :: Scheduled Tasks</a>
        </li>
              
    <li class="none">
              <a href="archiva-web/index.html">Archiva Web</a>
        </li>
          </ul>
          <h5>Project Documentation</h5>
        <ul>
              
                
              
      
            
      
            
      
            
      
            
      
            
      
            
      
            
            
            
      
            
      
            
      
            
      
            
      
              
            <li class="expanded">
              <a href="project-info.html">Project Information</a>
                <ul>
                  
    <li class="none">
              <a href="index.html">About</a>
        </li>
                  
    <li class="none">
              <a href="integration.html">Continuous Integration</a>
        </li>
                  
    <li class="none">
              <a href="dependencies.html">Dependencies</a>
        </li>
                  
    <li class="none">
              <a href="dependency-convergence.html">Dependency Convergence</a>
        </li>
                  
    <li class="none">
              <a href="dependency-management.html">Dependency Management</a>
        </li>
                  
    <li class="none">
              <a href="issue-tracking.html">Issue Tracking</a>
        </li>
                  
    <li class="none">
              <a href="mail-lists.html">Mailing Lists</a>
        </li>
                  
    <li class="none">
              <strong>Plugin Management</strong>
        </li>
                  
    <li class="none">
              <a href="license.html">Project License</a>
        </li>
                  
    <li class="none">
              <a href="plugins.html">Project Plugins</a>
        </li>
                  
    <li class="none">
              <a href="project-summary.html">Project Summary</a>
        </li>
                  
    <li class="none">
              <a href="team-list.html">Project Team</a>
        </li>
                  
    <li class="none">
              <a href="source-repository.html">Source Repository</a>
        </li>
              </ul>
        </li>
              
                
              
      
            
      
            
      
            
      
            
      
            
      
            
      
            
      
              
        <li class="collapsed">
              <a href="project-reports.html">Project Reports</a>
              </li>
          </ul>
                                       <a href="http://maven.apache.org/" title="Built by Maven" id="poweredBy">
            <img alt="Built by Maven" src="./images/logos/maven-feather.png"></img>
          </a>
                       
  

  
    
  
  
        </div>
    </div>
    <div id="bodyColumn">
      <div id="contentBox">
        <div class="section"><h2>Project Plugin Management</h2><table class="bodyTable"><tr class="a"><th>GroupId</th><th>ArtifactId</th><th>Version</th></tr><tr class="b"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-antrun-plugin">maven-antrun-plugin</a></td><td>1.3</td></tr><tr class="a"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-assembly-plugin">maven-assembly-plugin</a></td><td>2.2-beta-3</td></tr><tr class="b"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-clean-plugin">maven-clean-plugin</a></td><td>2.2</td></tr><tr class="a"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-compiler-plugin">maven-compiler-plugin</a></td><td>2.0.2</td></tr><tr class="b"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-dependency-plugin">maven-dependency-plugin</a></td><td>2.0</td></tr><tr class="a"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-deploy-plugin">maven-deploy-plugin</a></td><td>2.3</td></tr><tr class="b"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-ear-plugin">maven-ear-plugin</a></td><td>2.3.1</td></tr><tr class="a"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-ejb-plugin">maven-ejb-plugin</a></td><td>2.1</td></tr><tr class="b"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-gpg-plugin">maven-gpg-plugin</a></td><td>1.1</td></tr><tr class="a"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-idea-plugin">maven-idea-plugin</a></td><td>2.2</td></tr><tr class="b"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-install-plugin">maven-install-plugin</a></td><td>2.2</td></tr><tr class="a"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-jar-plugin">maven-jar-plugin</a></td><td>2.2</td></tr><tr class="b"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-javadoc-plugin">maven-javadoc-plugin</a></td><td>2.3</td></tr><tr class="a"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-plugin-plugin">maven-plugin-plugin</a></td><td>2.4.3</td></tr><tr class="b"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-rar-plugin">maven-rar-plugin</a></td><td>2.2</td></tr><tr class="a"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-release-plugin/">maven-release-plugin</a></td><td>2.0-beta-9</td></tr><tr class="b"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-remote-resources-plugin">maven-remote-resources-plugin</a></td><td>1.0-beta-2</td></tr><tr class="a"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-resources-plugin">maven-resources-plugin</a></td><td>2.2</td></tr><tr class="b"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-site-plugin">maven-site-plugin</a></td><td>2.0-beta-5</td></tr><tr class="a"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-source-plugin">maven-source-plugin</a></td><td>2.0.3</td></tr><tr class="b"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/surefire/maven-surefire-plugin">maven-surefire-plugin</a></td><td>2.4.2</td></tr><tr class="a"><td>org.apache.maven.plugins</td><td><a href="http://maven.apache.org/plugins/maven-war-plugin">maven-war-plugin</a></td><td>2.1-alpha-2</td></tr><tr class="b"><td>org.codehaus.modello</td><td><a href="http://modello.codehaus.org/modello-maven-plugin">modello-maven-plugin</a></td><td>1.0</td></tr></table></div>
      </div>
    </div>
    <div class="clear">
      <hr/>
    </div>
    <div id="footer">
      <div class="xright">&#169;  
          2006-2011
    
          The Apache Software Foundation
          
  

  
    
  
  
  </div>
      <div class="clear">
        <hr/>
      </div>
    </div>
  </body>
</html>
