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/10/12 07:05:15 UTC
svn commit: r463131 - in /maven/plugins/trunk/maven-assembly-plugin: ./
src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/
src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/
src/it/descriptor-refs/...
Author: jdcasey
Date: Wed Oct 11 22:05:12 2006
New Revision: 463131
URL: http://svn.apache.org/viewvc?view=rev&rev=463131
Log:
Fixing component.xml merging and inclusion into the assembly.
Added:
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/pom.xml (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/java/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/java/test/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/java/test/AppChild1.java (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/resources/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/resources/META-INF/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/resources/META-INF/plexus/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/resources/META-INF/plexus/components.xml (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/pom.xml (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/assemble/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/assemble/bin.xml (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/java/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/java/test/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/java/test/App.java (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/resources/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/resources/META-INF/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/resources/META-INF/plexus/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/resources/META-INF/plexus/components.xml (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/test/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/test/java/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/test/java/test/
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/test/java/test/AppTest.java (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/goals.txt (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/pom.xml (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/verify.bsh
Modified:
maven/plugins/trunk/maven-assembly-plugin/pom.xml
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilter.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilterTest.java
Modified: maven/plugins/trunk/maven-assembly-plugin/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/pom.xml?view=diff&rev=463131&r1=463130&r2=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/pom.xml (original)
+++ maven/plugins/trunk/maven-assembly-plugin/pom.xml Wed Oct 11 22:05:12 2006
@@ -268,6 +268,11 @@
</profiles>
<dependencies>
<dependency>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-archiver</artifactId>
+ <version>1.0-alpha-8-SNAPSHOT</version>
+ </dependency>
+ <dependency>
<groupId>org.apache.maven.shared</groupId>
<artifactId>file-management</artifactId>
<version>1.1-SNAPSHOT</version>
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/pom.xml?view=auto&rev=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/pom.xml (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/pom.xml Wed Oct 11 22:05:12 2006
@@ -0,0 +1,21 @@
+<?xml version="1.0"?><project>
+ <parent>
+ <artifactId>component-descriptors-merged</artifactId>
+ <groupId>test</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>test</groupId>
+ <artifactId>child1</artifactId>
+ <name>Maven Quick Start Archetype</name>
+ <version>1.0-SNAPSHOT</version>
+ <url>http://maven.apache.org</url>
+ <dependencies>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>3.8.1</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+</project>
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/pom.xml
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/java/test/AppChild1.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/java/test/AppChild1.java?view=auto&rev=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/java/test/AppChild1.java (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/java/test/AppChild1.java Wed Oct 11 22:05:12 2006
@@ -0,0 +1,13 @@
+package test;
+
+/**
+ * Hello world!
+ *
+ */
+public class AppChild1
+{
+ public static void main( String[] args )
+ {
+ System.out.println( "Hello World!" );
+ }
+}
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/java/test/AppChild1.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/java/test/AppChild1.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/resources/META-INF/plexus/components.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/resources/META-INF/plexus/components.xml?view=auto&rev=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/resources/META-INF/plexus/components.xml (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/resources/META-INF/plexus/components.xml Wed Oct 11 22:05:12 2006
@@ -0,0 +1,9 @@
+<component-set>
+ <components>
+ <component>
+ <role>child</role>
+ <role-hint>one</role-hint>
+ <implementation>test/AppChild1</implementation>
+ </component>
+ </components>
+</component-set>
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/resources/META-INF/plexus/components.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child1/src/main/resources/META-INF/plexus/components.xml
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/pom.xml?view=auto&rev=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/pom.xml (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/pom.xml Wed Oct 11 22:05:12 2006
@@ -0,0 +1,47 @@
+<?xml version="1.0"?><project>
+ <parent>
+ <artifactId>component-descriptors-merged</artifactId>
+ <groupId>test</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>test</groupId>
+ <artifactId>child2</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+ <dependencies>
+ <dependency>
+ <groupId>test</groupId>
+ <artifactId>child1</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>3.8.1</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>attach-binary-assembly</id>
+ <phase>package</phase>
+ <configuration>
+ <descriptorRefs>
+ <descriptorRef>jar-with-dependencies</descriptorRef>
+ </descriptorRefs>
+ </configuration>
+ <goals>
+ <goal>attached</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/pom.xml
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/assemble/bin.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/assemble/bin.xml?view=auto&rev=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/assemble/bin.xml (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/assemble/bin.xml Wed Oct 11 22:05:12 2006
@@ -0,0 +1,21 @@
+<assembly>
+ <id>bin</id>
+ <formats>
+ <format>jar</format>
+ </formats>
+ <includeBaseDirectory>false</includeBaseDirectory>
+ <dependencySets>
+ <dependencySet>
+ <includes>
+ <include>test:child1</include>
+ </includes>
+ <unpack>true</unpack>
+ <outputDirectory>/</outputDirectory>
+ <outputFileNameMapping>${artifactId}</outputFileNameMapping>
+ <scope>test</scope>
+ <excludes>
+ <exclude>junit:junit</exclude>
+ </excludes>
+ </dependencySet>
+ </dependencySets>
+</assembly>
\ No newline at end of file
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/assemble/bin.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/assemble/bin.xml
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/java/test/App.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/java/test/App.java?view=auto&rev=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/java/test/App.java (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/java/test/App.java Wed Oct 11 22:05:12 2006
@@ -0,0 +1,13 @@
+package test;
+
+/**
+ * Hello world!
+ *
+ */
+public class App
+{
+ public static void main( String[] args )
+ {
+ System.out.println( "Hello World!" );
+ }
+}
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/java/test/App.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/java/test/App.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/resources/META-INF/plexus/components.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/resources/META-INF/plexus/components.xml?view=auto&rev=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/resources/META-INF/plexus/components.xml (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/resources/META-INF/plexus/components.xml Wed Oct 11 22:05:12 2006
@@ -0,0 +1,9 @@
+<component-set>
+ <components>
+ <component>
+ <role>child</role>
+ <role-hint>two</role-hint>
+ <implementation>test/App</implementation>
+ </component>
+ </components>
+</component-set>
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/resources/META-INF/plexus/components.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/main/resources/META-INF/plexus/components.xml
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/test/java/test/AppTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/test/java/test/AppTest.java?view=auto&rev=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/test/java/test/AppTest.java (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/test/java/test/AppTest.java Wed Oct 11 22:05:12 2006
@@ -0,0 +1,38 @@
+package test;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+/**
+ * Unit test for simple App.
+ */
+public class AppTest
+ extends TestCase
+{
+ /**
+ * Create the test case
+ *
+ * @param testName name of the test case
+ */
+ public AppTest( String testName )
+ {
+ super( testName );
+ }
+
+ /**
+ * @return the suite of tests being tested
+ */
+ public static Test suite()
+ {
+ return new TestSuite( AppTest.class );
+ }
+
+ /**
+ * Rigourous Test :-)
+ */
+ public void testApp()
+ {
+ assertTrue( true );
+ }
+}
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/test/java/test/AppTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/child2/src/test/java/test/AppTest.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/goals.txt
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/goals.txt?view=auto&rev=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/goals.txt (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/goals.txt Wed Oct 11 22:05:12 2006
@@ -0,0 +1,2 @@
+clean
+package
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/goals.txt
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/goals.txt
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/pom.xml?view=auto&rev=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/pom.xml (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/pom.xml Wed Oct 11 22:05:12 2006
@@ -0,0 +1,13 @@
+<?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>test</groupId>
+ <artifactId>component-descriptors-merged</artifactId>
+ <packaging>pom</packaging>
+ <version>1.0-SNAPSHOT</version>
+
+ <modules>
+ <module>child1</module>
+ <module>child2</module>
+ </modules>
+</project>
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/pom.xml
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/verify.bsh
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/verify.bsh?view=auto&rev=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/verify.bsh (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/descriptor-refs/jar-with-dependencies/component-descriptors-merged/verify.bsh Wed Oct 11 22:05:12 2006
@@ -0,0 +1,59 @@
+import java.io.*;
+import java.net.*;
+import java.util.jar.*;
+
+boolean result = true;
+
+try
+{
+ System.out.println( "Creating JarFile java.io.File." );
+
+ File jarFile = new File( basedir, "child2/target/child2-1.0-SNAPSHOT-jar-with-dependencies.jar" );
+
+ System.out.println( "Checking for existence and file-ishness of: " + jarFile );
+
+ if ( !jarFile.exists() || jarFile.isDirectory() )
+ {
+ System.err.println( "jar file is missing or a directory." );
+ return false;
+ }
+
+ System.out.println( "Creating JarFile instance." );
+
+ JarFile jf = new JarFile( jarFile );
+
+ System.out.println( "Looking for component descriptor jar entry." );
+
+ JarEntry je = jf.getEntry( "META-INF/plexus/components.xml" );
+
+ if ( je == null )
+ {
+ System.err.println( "component descriptor is missing." );
+ result = false;
+ }
+ else
+ {
+ InputStream instream = jf.getInputStream( je );
+
+ ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ byte[] buf = new byte[16];
+ int read = -1;
+
+ while( ( read = instream.read( buf ) ) > -1 )
+ {
+ baos.write( buf, 0, read );
+ }
+
+ String test = new String( baos.toByteArray() );
+
+ result = test.indexOf( "one" ) > -1 && test.indexOf( "two" ) > -1;
+ }
+
+}
+catch( IOException e )
+{
+ e.printStackTrace();
+ result = false;
+}
+
+return result;
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java?view=diff&rev=463131&r1=463130&r2=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiver.java Wed Oct 11 22:05:12 2006
@@ -75,6 +75,7 @@
try
{
Archiver archiver = createArchiver( format, assembly.isIncludeBaseDirectory(), configSource.getFinalName(), configSource.getTarLongFileMode(), componentsXmlFilter );
+ System.out.println( "Archiver is: " + archiver );
for ( Iterator phaseIterator = assemblyPhases.iterator(); phaseIterator.hasNext(); )
{
@@ -85,6 +86,8 @@
archiver.setDestFile( destFile );
+ System.out.println( "Creating archive with: " + archiver );
+
archiver.createArchive();
}
catch ( ArchiverException e )
@@ -149,6 +152,8 @@
{
if ( archiver instanceof FinalizerEnabled )
{
+ System.out.println( "Adding components.xml merge finalizer." );
+
( ( FinalizerEnabled ) archiver ).setArchiveFinalizers( Collections.singletonList( componentsXmlFilter ) );
}
}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java?view=diff&rev=463131&r1=463130&r2=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizer.java Wed Oct 11 22:05:12 2006
@@ -4,6 +4,8 @@
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
+import java.util.Collections;
+import java.util.List;
import org.apache.maven.archiver.MavenArchiveConfiguration;
import org.apache.maven.archiver.MavenArchiver;
@@ -23,6 +25,13 @@
private final MavenProject project;
private final MavenArchiveConfiguration archiveConfiguration;
+ // TODO: I'd really prefer to rewrite MavenArchiver as either a
+ // separate manifest creation utility (and to
+ // create an include pom.properties etc into another archiver), or
+ // an implementation of an archiver
+ // (the first is preferable).
+ private MavenArchiver mavenArchiver = new MavenArchiver();
+
public ManifestCreationFinalizer( MavenProject project, MavenArchiveConfiguration archiveConfiguration )
{
this.project = project;
@@ -32,13 +41,6 @@
public void finalizeArchiveCreation( Archiver archiver )
throws ArchiverException
{
- // TODO: I'd really prefer to rewrite MavenArchiver as either a
- // separate manifest creation utility (and to
- // create an include pom.properties etc into another archiver), or
- // an implementation of an archiver
- // (the first is preferable).
- MavenArchiver mavenArchiver = new MavenArchiver();
-
if ( archiveConfiguration != null )
{
try
@@ -81,6 +83,25 @@
throw new ArchiverException( "Dependencies were not resolved: " + e.getMessage(), e );
}
}
+ }
+
+ public List getVirtualFiles()
+ {
+ try
+ {
+ if ( mavenArchiver.getManifest( project, archiveConfiguration.getManifest() ) != null )
+ {
+ return Collections.singletonList( "META-INF/MANIFEST.MF" );
+ }
+ }
+ catch ( ManifestException e )
+ {
+ }
+ catch ( DependencyResolutionRequiredException e )
+ {
+ }
+
+ return null;
}
}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilter.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilter.java?view=diff&rev=463131&r1=463130&r2=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilter.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilter.java Wed Oct 11 22:05:12 2006
@@ -22,8 +22,10 @@
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
+import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedHashMap;
+import java.util.List;
import java.util.Map;
import org.codehaus.plexus.archiver.AbstractArchiveFinalizer;
@@ -49,12 +51,19 @@
// [jdcasey] Switched visibility to protected to allow testing. Also, because this class isn't final, it should allow
// some minimal access to the components accumulated for extending classes.
protected Map components;
+
+ private boolean excludeOverride = false;
public static final String COMPONENTS_XML_PATH = "META-INF/plexus/components.xml";
public boolean include( InputStream dataStream, String entryName )
throws ArchiveFilterException
{
+ if ( excludeOverride )
+ {
+ return true;
+ }
+
String entry = entryName;
if ( entry.startsWith( "/" ) )
@@ -87,7 +96,7 @@
throws XmlPullParserException, IOException
{
Xpp3Dom newDom = Xpp3DomBuilder.build( componentsReader );
-
+
if ( newDom != null )
{
newDom = newDom.getChild( "components" );
@@ -156,7 +165,12 @@
{
IOUtil.close( fileWriter );
}
+
+ excludeOverride = true;
+
archiver.addFile( f, COMPONENTS_XML_PATH );
+
+ excludeOverride = false;
}
}
@@ -171,6 +185,16 @@
{
throw new ArchiverException( "Error finalizing component-set for archive. Reason: " + e.getMessage(), e );
}
+ }
+
+ public List getVirtualFiles()
+ {
+ if ( components != null && !components.isEmpty() )
+ {
+ return Collections.singletonList( COMPONENTS_XML_PATH );
+ }
+
+ return null;
}
}
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java?view=diff&rev=463131&r1=463130&r2=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/DefaultAssemblyArchiverTest.java Wed Oct 11 22:05:12 2006
@@ -469,7 +469,7 @@
TarOptions options;
- public void createArchive()
+ protected void execute()
throws ArchiverException, IOException
{
archiveCreated = true;
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java?view=diff&rev=463131&r1=463130&r2=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/ManifestCreationFinalizerTest.java Wed Oct 11 22:05:12 2006
@@ -17,6 +17,7 @@
import java.io.InputStreamReader;
import java.io.StringWriter;
import java.net.URL;
+import java.util.Collections;
import junit.framework.TestCase;
@@ -66,13 +67,13 @@
config.setManifestFile( manifestFile );
- Archiver archiver = new JarArchiver();
+ JarArchiver archiver = new JarArchiver();
+
+ archiver.setArchiveFinalizers( Collections.singletonList( new ManifestCreationFinalizer( project, config ) ) );
File file = fileManager.createTempFile();
archiver.setDestFile( file );
-
- new ManifestCreationFinalizer( project, config ).finalizeArchiveCreation( archiver );
archiver.createArchive();
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilterTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilterTest.java?view=diff&rev=463131&r1=463130&r2=463131
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilterTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/filter/ComponentsXmlArchiverFileFilterTest.java Wed Oct 11 22:05:12 2006
@@ -1,6 +1,7 @@
package org.apache.maven.plugin.assembly.filter;
import java.io.File;
+import java.io.FileOutputStream;
import java.io.IOException;
import java.io.Reader;
import java.io.StringReader;
@@ -11,11 +12,16 @@
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipFile;
import junit.framework.TestCase;
+import org.apache.maven.plugin.assembly.testutils.TestFileManager;
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.archiver.ArchiverException;
+import org.codehaus.plexus.archiver.zip.ZipArchiver;
+import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.xml.PrettyPrintXMLWriter;
import org.codehaus.plexus.util.xml.Xpp3Dom;
import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
@@ -29,6 +35,8 @@
extends TestCase
{
private ComponentsXmlArchiverFileFilter filter;
+
+ private TestFileManager fileManager = new TestFileManager( "componentsXmlArchiverFileFilter.test", ".zip" );
public void setUp()
{
@@ -39,7 +47,7 @@
throws IOException, XmlPullParserException
{
Reader reader = writeComponentsXml( Collections.singletonList( new ComponentDef( "role", null,
- "org.apache.maven.Impl" ) ) );
+ "org.apache.maven.Impl" ) ) );
filter.addComponentsXml( reader );
@@ -56,7 +64,7 @@
throws IOException, XmlPullParserException
{
Reader reader = writeComponentsXml( Collections.singletonList( new ComponentDef( "role", "hint",
- "org.apache.maven.Impl" ) ) );
+ "org.apache.maven.Impl" ) ) );
filter.addComponentsXml( reader );
@@ -118,9 +126,9 @@
XPath hint = XPath.newInstance( "//component[position()=1]/role-hint/text()" );
XPath implementation = XPath.newInstance( "//component[position()=1]/implementation/text()" );
- assertEquals( "role", ((Text) role.selectSingleNode( doc )).getText() );
+ assertEquals( "role", ( (Text) role.selectSingleNode( doc ) ).getText() );
assertNull( hint.selectSingleNode( doc ) );
- assertEquals( "impl", ((Text) implementation.selectSingleNode( doc )).getText() );
+ assertEquals( "impl", ( (Text) implementation.selectSingleNode( doc ) ).getText() );
}
public void testAddToArchive_ShouldWriteComponentWithHintToFile()
@@ -145,9 +153,9 @@
XPath hint = XPath.newInstance( "//component[position()=1]/role-hint/text()" );
XPath implementation = XPath.newInstance( "//component[position()=1]/implementation/text()" );
- assertEquals( "role", ((Text) role.selectSingleNode( doc )).getText() );
- assertEquals( "hint", ((Text) hint.selectSingleNode( doc )).getText() );
- assertEquals( "impl", ((Text) implementation.selectSingleNode( doc )).getText() );
+ assertEquals( "role", ( (Text) role.selectSingleNode( doc ) ).getText() );
+ assertEquals( "hint", ( (Text) hint.selectSingleNode( doc ) ).getText() );
+ assertEquals( "impl", ( (Text) implementation.selectSingleNode( doc ) ).getText() );
}
public void testAddToArchive_ShouldWriteTwoComponentToFile()
@@ -177,17 +185,75 @@
XPath hint = XPath.newInstance( "//component[position()=1]/role-hint/text()" );
XPath implementation = XPath.newInstance( "//component[position()=1]/implementation/text()" );
- assertEquals( "role", ((Text) role.selectSingleNode( doc )).getText() );
- assertEquals( "hint", ((Text) hint.selectSingleNode( doc )).getText() );
- assertEquals( "impl", ((Text) implementation.selectSingleNode( doc )).getText() );
+ assertEquals( "role", ( (Text) role.selectSingleNode( doc ) ).getText() );
+ assertEquals( "hint", ( (Text) hint.selectSingleNode( doc ) ).getText() );
+ assertEquals( "impl", ( (Text) implementation.selectSingleNode( doc ) ).getText() );
XPath role2 = XPath.newInstance( "//component[position()=2]/role/text()" );
XPath hint2 = XPath.newInstance( "//component[position()=2]/role-hint/text()" );
XPath implementation2 = XPath.newInstance( "//component[position()=2]/implementation/text()" );
- assertEquals( "role", ((Text) role2.selectSingleNode( doc )).getText() );
- assertEquals( "hint2", ((Text) hint2.selectSingleNode( doc )).getText() );
- assertEquals( "impl", ((Text) implementation2.selectSingleNode( doc )).getText() );
+ assertEquals( "role", ( (Text) role2.selectSingleNode( doc ) ).getText() );
+ assertEquals( "hint2", ( (Text) hint2.selectSingleNode( doc ) ).getText() );
+ assertEquals( "impl", ( (Text) implementation2.selectSingleNode( doc ) ).getText() );
+
+ }
+
+ public void testAddToArchive_ShouldWriteTwoComponentToArchivedFile()
+ throws IOException, ArchiverException, JDOMException
+ {
+ filter.components = new LinkedHashMap();
+
+ Xpp3Dom dom = createComponentDom( new ComponentDef( "role", "hint", "impl" ) );
+
+ filter.components.put( "rolehint", dom );
+
+ Xpp3Dom dom2 = createComponentDom( new ComponentDef( "role", "hint2", "impl" ) );
+
+ filter.components.put( "rolehint2", dom2 );
+
+ ZipArchiver archiver = new ZipArchiver();
+
+ File archiveFile = fileManager.createTempFile();
+
+ archiver.setDestFile( archiveFile );
+
+ File descriptorFile = fileManager.createTempFile();
+
+ archiver.setArchiveFinalizers( Collections.singletonList( filter ) );
+
+ archiver.createArchive();
+
+ ZipFile zf = new ZipFile( archiveFile );
+
+ ZipEntry ze = zf.getEntry( ComponentsXmlArchiverFileFilter.COMPONENTS_XML_PATH );
+
+ assertNotNull( ze );
+
+ FileOutputStream fileStream = new FileOutputStream( descriptorFile );
+
+ IOUtil.copy( zf.getInputStream( ze ), fileStream );
+ IOUtil.close( fileStream );
+
+ SAXBuilder builder = new SAXBuilder( false );
+
+ Document doc = builder.build( descriptorFile );
+
+ XPath role = XPath.newInstance( "//component[position()=1]/role/text()" );
+ XPath hint = XPath.newInstance( "//component[position()=1]/role-hint/text()" );
+ XPath implementation = XPath.newInstance( "//component[position()=1]/implementation/text()" );
+
+ assertEquals( "role", ( (Text) role.selectSingleNode( doc ) ).getText() );
+ assertEquals( "hint", ( (Text) hint.selectSingleNode( doc ) ).getText() );
+ assertEquals( "impl", ( (Text) implementation.selectSingleNode( doc ) ).getText() );
+
+ XPath role2 = XPath.newInstance( "//component[position()=2]/role/text()" );
+ XPath hint2 = XPath.newInstance( "//component[position()=2]/role-hint/text()" );
+ XPath implementation2 = XPath.newInstance( "//component[position()=2]/implementation/text()" );
+
+ assertEquals( "role", ( (Text) role2.selectSingleNode( doc ) ).getText() );
+ assertEquals( "hint2", ( (Text) hint2.selectSingleNode( doc ) ).getText() );
+ assertEquals( "impl", ( (Text) implementation2.selectSingleNode( doc ) ).getText() );
}
@@ -401,20 +467,20 @@
{
throw new UnsupportedOperationException( "not supported" );
}
-
+
public void setForced( boolean forced )
{
- throw new UnsupportedOperationException( "not supported" );
+ throw new UnsupportedOperationException( "not supported" );
}
public boolean isForced()
{
- throw new UnsupportedOperationException( "not supported" );
+ throw new UnsupportedOperationException( "not supported" );
}
public boolean isSupportingForced()
{
- throw new UnsupportedOperationException( "not supported" );
+ throw new UnsupportedOperationException( "not supported" );
}
}