You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jd...@apache.org on 2006/11/02 17:39:17 UTC
svn commit: r470414 - in /maven/plugins/trunk/maven-assembly-plugin/src:
main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/ site/apt/
Author: jdcasey
Date: Thu Nov 2 08:39:16 2006
New Revision: 470414
URL: http://svn.apache.org/viewvc?view=rev&rev=470414
Log:
Missed a few classes created for wrapping the new repo-builder model classes, and also adding a couple updates to docs.
Added:
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java (with props)
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoBuilderConfigSourceWrapper.java (with props)
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java (with props)
Modified:
maven/plugins/trunk/maven-assembly-plugin/src/site/apt/index.apt
maven/plugins/trunk/maven-assembly-plugin/src/site/apt/usage.apt
Added: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java?view=auto&rev=470414
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java Thu Nov 2 08:39:16 2006
@@ -0,0 +1,32 @@
+package org.apache.maven.plugin.assembly.archive.phase.wrappers;
+
+import org.apache.maven.plugins.assembly.model.GroupVersionAlignment;
+
+import java.util.List;
+
+public class GroupVersionAlignmentWrapper
+{
+
+ private final GroupVersionAlignment alignment;
+
+ public GroupVersionAlignmentWrapper( GroupVersionAlignment alignment )
+ {
+ this.alignment = alignment;
+ }
+
+ public List getExcludes()
+ {
+ return alignment.getExcludes();
+ }
+
+ public String getId()
+ {
+ return alignment.getId();
+ }
+
+ public String getVersion()
+ {
+ return alignment.getVersion();
+ }
+
+}
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/GroupVersionAlignmentWrapper.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoBuilderConfigSourceWrapper.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoBuilderConfigSourceWrapper.java?view=auto&rev=470414
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoBuilderConfigSourceWrapper.java (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoBuilderConfigSourceWrapper.java Thu Nov 2 08:39:16 2006
@@ -0,0 +1,29 @@
+package org.apache.maven.plugin.assembly.archive.phase.wrappers;
+
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.shared.repository.RepositoryBuilderConfigSource;
+
+public class RepoBuilderConfigSourceWrapper
+ implements RepositoryBuilderConfigSource
+{
+
+ private final AssemblerConfigurationSource configSource;
+
+ public RepoBuilderConfigSourceWrapper( AssemblerConfigurationSource configSource )
+ {
+ this.configSource = configSource;
+ }
+
+ public ArtifactRepository getLocalRepository()
+ {
+ return configSource.getLocalRepository();
+ }
+
+ public MavenProject getProject()
+ {
+ return configSource.getProject();
+ }
+
+}
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoBuilderConfigSourceWrapper.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoBuilderConfigSourceWrapper.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java?view=auto&rev=470414
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java Thu Nov 2 08:39:16 2006
@@ -0,0 +1,64 @@
+package org.apache.maven.plugin.assembly.archive.phase.wrappers;
+
+import org.apache.maven.plugins.assembly.model.GroupVersionAlignment;
+import org.apache.maven.plugins.assembly.model.Repository;
+import org.apache.maven.shared.repository.model.RepositoryInfo;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+public class RepoInfoWrapper
+ implements RepositoryInfo
+{
+
+ private final Repository repo;
+ private List convertedAlignments;
+
+ public RepoInfoWrapper( Repository repo )
+ {
+ this.repo = repo;
+ }
+
+ public List getExcludes()
+ {
+ return repo.getExcludes();
+ }
+
+ public List getGroupVersionAlignments()
+ {
+ List alignments = repo.getGroupVersionAlignments();
+
+ if ( convertedAlignments == null || alignments.size() != convertedAlignments.size() )
+ {
+ List l = new ArrayList( alignments.size() );
+
+ for ( Iterator it = alignments.iterator(); it.hasNext(); )
+ {
+ GroupVersionAlignment alignment = (GroupVersionAlignment) it.next();
+
+ l.add( new GroupVersionAlignmentWrapper( alignment ) );
+ }
+
+ convertedAlignments = l;
+ }
+
+ return convertedAlignments;
+ }
+
+ public List getIncludes()
+ {
+ return repo.getIncludes();
+ }
+
+ public String getScope()
+ {
+ return repo.getScope();
+ }
+
+ public boolean isIncludeMetadata()
+ {
+ return repo.isIncludeMetadata();
+ }
+
+}
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/wrappers/RepoInfoWrapper.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
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?view=diff&rev=470414&r1=470413&r2=470414
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/site/apt/index.apt (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/site/apt/index.apt Thu Nov 2 08:39:16 2006
@@ -114,11 +114,11 @@
* {{{directory-mojo.html}assembly:directory}} Assembles an application bundle
from an assembly descriptor or distribution into a directory. Executed from
- the command-line.
+ the command-line.*
* {{{directory-inline-mojo.html}assembly:directory-inline}} Assembles an
application bundle or distribution into a directory. Executed within the Maven
- Lifecycle.
+ Lifecycle.*
* {{{unpack-mojo.html}assembly:unpack}} Assembles an application bundle or
distribution from an assembly descriptor into an archive of a chosen format
@@ -127,6 +127,15 @@
* {{{single-mojo.html}assembly:single}} An assembly mojo created as a
work-around for lifecycle issues until addressed in the Maven 2.1 release.
+ * {{{directory-single-mojo.html}assembly:directory-single}} An assembly mojo
+ created as a work-around for lifecycle issues until addressed in the Maven 2.1
+ release. This mojo will generate an assembly into a directory.
+
+ []
+
+ \* <<NOTE:>> Directory-based assemblies cannot be attached to a project for
+ deployment or installation, since they do not represent a single,
+ self-contained file which can be transferred across network connections.
* Usage
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?view=diff&rev=470414&r1=470413&r2=470414
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/site/apt/usage.apt (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/site/apt/usage.apt Thu Nov 2 08:39:16 2006
@@ -322,6 +322,21 @@
* Advanced Configuration
+** Creating Assemblies from Multiple Projects in a Multimodule Build
+
+ In certain cases, you may need to create several assembly archives from
+ different points in a multimodule build. For this reason, two new assembly
+ mojos have been introduced: <<<assembly:single>>>, and
+ <<<assembly:directory-single>>>. These mojos will perform the usual tasks
+ associated with creating assembly archives or directories, without running in
+ a once-per-build mode. However, it's important to note that the use of the
+ <<<\<moduleSets\>>>> section in the assembly descriptor may be limited in
+ these cases, since the assembly mojo will not have access to the full list of
+ projects in the current build. See the examples entry in the
+ {{{#Resources}Resources}} section below for more information.
+
+** Creating an Executable Jar
+
As you've no doubt noticed, the Assembly Plugin can be a very useful way to
create a self-contained binary artifact for your project, among many other
things. However, once you've created this self-contained jar, you will
@@ -369,9 +384,11 @@
** GOTCHA!
- At this point, the directory-oriented mojos - <<<directory>>> and
- <<<directory-inline>>> - <<do not>> support the <<<\<archive\>>>>
- configuration element.
+ At this point, only the <<<jar>>> assembly format supports the <<<\<archive\>>>>
+ configuration element. By definition, directory-based assembly mojos -
+ <<<assembly:directory>>>, <<<assembly:directory-inline>>>, and
+ <<<assembly:directory-single>>> - do not produce a jar-format archive, and
+ therefore do not support the <<<\<archive\>>>> element.
* {Resources}