Author: epunzalan
Date: Mon Jul 31 00:37:20 2006
New Revision: 427036

URL: http://svn.apache.org/viewvc?rev=427036&view=rev
Log:
PR: MASSEMBLY-130
Submitted by: Baerrach bonDierne

With some minor revisions to the patch.

Provided additional example and improved some docs on the supported archives.

Added:
    
maven/plugins/trunk/maven-assembly-plugin/src/site/apt/examples/single/including-and-excluding-artifacts.apt
Modified:
    
maven/plugins/trunk/maven-assembly-plugin/src/site/apt/examples/single/index.apt
    maven/plugins/trunk/maven-assembly-plugin/src/site/apt/features.apt
    maven/plugins/trunk/maven-assembly-plugin/src/site/apt/index.apt
    maven/plugins/trunk/maven-assembly-plugin/src/site/apt/usage.apt
    maven/plugins/trunk/maven-assembly-plugin/src/site/site.xml

Added: 
maven/plugins/trunk/maven-assembly-plugin/src/site/apt/examples/single/including-and-excluding-artifacts.apt
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/site/apt/examples/single/including-and-excluding-artifacts.apt?rev=427036&view=auto
==============================================================================
--- 
maven/plugins/trunk/maven-assembly-plugin/src/site/apt/examples/single/including-and-excluding-artifacts.apt
 (added)
+++ 
maven/plugins/trunk/maven-assembly-plugin/src/site/apt/examples/single/including-and-excluding-artifacts.apt
 Mon Jul 31 00:37:20 2006
@@ -0,0 +1,74 @@
+  ---
+  Including and Excluding Artifacts
+  ---
+  Barrie Treloar
+  ---
+  31-July-2006
+  ---
+
+~~ Copyright 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.
+
+~~ NOTE: For help with the syntax of this file, see:
+~~ http://maven.apache.org/guides/mini/guide-apt-format.html
+
+
+Including and Excluding Artifacts
+
+  Currently the include/exclude format is based upon the dependency conflict id
+  which has a form of: <<<groupId:artifactId:type:classifier>>>. A shortened
+  form of the dependency conflict id may also be used <<<groupId:artifactId>>>.
+
+  The check for inclusion/exclusion is done based on either the dependency
+  conflict id or the shortened form as a <<<String.equals()>>> so it must
+  be an identical match for it to be included or excluded. At present there is
+  no support for regular expressions.
+
+  This example excludes the log4j and commons-lang jar files from the assembly.
+  This would be useful when you are building a super distribution assembly 
which
+  contained sub distributions (i.e. other already assembled zips or tars) where
+  in your pom you are depenedent upon those distributions.  But because the
+  distributions transitively depend upon the project's dependencies the 
assembly
+  also includes the jar files (which are already in the assemblies and don't
+  need to be duplicated)
+
+  Your pom might include something like:
+
+-----
+    <dependencies>
+        <dependency>
+            <groupId>YOUR GROUP</groupId>
+            <artifactId>YOUR ARTIFACT</artifactId>
+            <version>YOUR VERSION</version>
+            <classifier>bin</classifier>
+            <type>zip</type>
+        </dependency>
+-----
+
+  And then in your assembly you exclude all the jar dependencies pulled in
+  from the binary assembly. In this example the commons-lang and log4j jars
+  are included unnecessarily (as they are in the bin.zip file already)
+
+-----
+  <dependencySets>
+    <dependencySet>
+      ....
+      <excludes>
+        <exclude>commons-lang:commons-lang</exclude>
+        <exclude>log4j:log4j</exclude>
+      </excludes>
+    </dependencySet>
+    ....
+  </dependencySets>
+-----

Modified: 
maven/plugins/trunk/maven-assembly-plugin/src/site/apt/examples/single/index.apt
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/site/apt/examples/single/index.apt?rev=427036&r1=427035&r2=427036&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-assembly-plugin/src/site/apt/examples/single/index.apt
 (original)
+++ 
maven/plugins/trunk/maven-assembly-plugin/src/site/apt/examples/single/index.apt
 Mon Jul 31 00:37:20 2006
@@ -32,6 +32,8 @@
 
   * {{{filtering-some-distribution-files.html}Filtering Some Distribution 
Files}}
 
+  * {{{include-and-exclude.html}Include/Exclude Artifacts}}
+
   * {{{using-components.html}Using Component Descriptors}}
 
   * {{{using-repositories.html}Using Repositories}}

Modified: maven/plugins/trunk/maven-assembly-plugin/src/site/apt/features.apt
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/site/apt/features.apt?rev=427036&r1=427035&r2=427036&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/site/apt/features.apt 
(original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/site/apt/features.apt Mon Jul 
31 00:37:20 2006
@@ -42,7 +42,9 @@
   
   * Reusable assembly-descriptor components <[2.1]>
   
-  * Supported archive formats include: tar.gz, tar.bz2, zip, jar
+  * Supported archive formats include: zip, tar, tar.gz, tar.bz2, jar, dir, war
+   (and any other format that the ArchiveManager has been configured for).
+
   
   * Directory-only assemblies
   

Modified: maven/plugins/trunk/maven-assembly-plugin/src/site/apt/index.apt
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/site/apt/index.apt?rev=427036&r1=427035&r2=427036&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/site/apt/index.apt (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/site/apt/index.apt Mon Jul 31 
00:37:20 2006
@@ -47,6 +47,12 @@
 
     * jar
 
+    * dir
+
+    * war
+
+    * and any other format that the ArchiveManager has been configured for
+
   To use the Assembly Plugin in Maven 2, you simply need to:
 
     * choose or write the assembly descriptor to use,

Modified: maven/plugins/trunk/maven-assembly-plugin/src/site/apt/usage.apt
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/site/apt/usage.apt?rev=427036&r1=427035&r2=427036&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/site/apt/usage.apt (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/site/apt/usage.apt Mon Jul 31 
00:37:20 2006
@@ -39,7 +39,11 @@
   you're using a custom assembly descriptor, you give it the path to the
   descriptor. Note that a single invocation of the Assembly Plugin can actually
   produce assemblies from multiple descriptors, allowing you maximum 
flexibility
-  to customize the suite of binaries your project produces.
+  to customize the suite of binaries your project produces. When the assembly 
is
+  created it will use the assemblyId as the artifact's classifier and will 
attach
+  the created assembly to the project and will be uploaded into the repository
+  on an install and deploy goal.
+  
   
   For example, imagine that our project produces a jar. If we want to create an
   assembly binary that includes our project's dependencies, we can take

Modified: maven/plugins/trunk/maven-assembly-plugin/src/site/site.xml
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/site/site.xml?rev=427036&r1=427035&r2=427036&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/site/site.xml (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/site/site.xml Mon Jul 31 
00:37:20 2006
@@ -45,6 +45,7 @@
       <item name="Examples Index" href="examples/index.html"/>
       <item name="Single Project" collapse="false" 
href="examples/single/index.html">
         <item name="Filtering Some Distribution Files" 
href="examples/single/filtering-some-distribution-files.html"/>
+        <item name="Include/Exclude Artifacts" 
href="examples/single/include-and-exclude.html"/>
         <item name="Using Component Descriptors" 
href="examples/single/using-components.html"/>
         <item name="Using Repositories" 
href="examples/single/using-repositories.html"/>
       </item>


Reply via email to