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/08/30 18:00:01 UTC
svn commit: r438528 [1/2] - in
/maven/plugins/trunk/maven-assembly-plugin/src:
it/multimodule/module-sourceIncludedBinaryNotIncluded/
it/multimodule/module-sourceIncludedBinaryNotIncluded/src/assemble/
it/multimodule/module-sourceNotIncludedBinaryInclu...
Author: jdcasey
Date: Wed Aug 30 08:59:57 2006
New Revision: 438528
URL: http://svn.apache.org/viewvc?rev=438528&view=rev
Log:
Adding control for inclusion of sub-modules, and late dependency-resolution, to avoid resolving dependencies which are not needed for source-only assemblies.
Added:
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceIncludedBinaryNotIncluded/verify.bsh
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceNotIncludedBinaryIncluded/verify.bsh
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/pom.xml (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/main/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/main/java/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/main/java/test/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/main/java/test/App.java (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/test/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/test/java/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/test/java/test/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/test/java/test/AppTest.java (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/pom.xml (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/main/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/main/java/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/main/java/test/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/main/java/test/App.java (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/test/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/test/java/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/test/java/test/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/pom.xml (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/goals.txt (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/pom.xml (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/src/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/src/assemble/
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/src/assemble/bin.xml (with props)
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/verify.bsh
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java (with props)
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java (with props)
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/testutils/MockAndControlForAddDependencySetsTask.java (with props)
Removed:
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceIncludedBinaryNotIncluded/src/assemble/bin.xml
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceNotIncludedBinaryIncluded/src/assemble/src.xml
Modified:
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceIncludedBinaryNotIncluded/src/assemble/src.xml
maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceNotIncludedBinaryIncluded/src/assemble/bin.xml
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AssemblyMojo.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AttachedAssemblyMojo.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/DirectoryInlineMojo.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/DirectoryMojo.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/SingleAssemblyMojo.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/FilterUtils.java
maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/ProjectUtils.java
maven/plugins/trunk/maven-assembly-plugin/src/main/mdo/descriptor.mdo
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhaseTest.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTaskTest.java
maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/utils/ProjectUtilsTest.java
Modified: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceIncludedBinaryNotIncluded/src/assemble/src.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceIncludedBinaryNotIncluded/src/assemble/src.xml?rev=438528&r1=438527&r2=438528&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceIncludedBinaryNotIncluded/src/assemble/src.xml (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceIncludedBinaryNotIncluded/src/assemble/src.xml Wed Aug 30 08:59:57 2006
@@ -8,9 +8,14 @@
<moduleSet>
<includes>
<include>org.test:child1</include>
+ <include>org.test:child3</include>
</includes>
<sources>
<outputDirectory>sources/${artifactId}</outputDirectory>
+ <excludes>
+ <exclude>target/**</exclude>
+ <exclude>**/*~</exclude>
+ </excludes>
</sources>
</moduleSet>
</moduleSets>
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceIncludedBinaryNotIncluded/verify.bsh
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceIncludedBinaryNotIncluded/verify.bsh?rev=438528&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceIncludedBinaryNotIncluded/verify.bsh (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceIncludedBinaryNotIncluded/verify.bsh Wed Aug 30 08:59:57 2006
@@ -0,0 +1,9 @@
+import java.io.*;
+
+boolean result = true;
+
+result = result && new File( basedir, "target/parent-1.0-src.dir/sources/child1/pom.xml" ).exists();
+
+result = result && !new File( basedir, "target/parent-1.0-src.dir/sources/child2/pom.xml" ).exists();
+
+return result;
Modified: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceNotIncludedBinaryIncluded/src/assemble/bin.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceNotIncludedBinaryIncluded/src/assemble/bin.xml?rev=438528&r1=438527&r2=438528&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceNotIncludedBinaryIncluded/src/assemble/bin.xml (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceNotIncludedBinaryIncluded/src/assemble/bin.xml Wed Aug 30 08:59:57 2006
@@ -9,9 +9,11 @@
<moduleSet>
<includes>
<include>org.test:child1</include>
+ <include>org.test:child3</include>
</includes>
<binaries>
- <outputDirectory>modules/${artifactId}</outputDirectory>
+ <outputFileNameMapping>${artifactId}.${extension}</outputFileNameMapping>
+ <outputDirectory>lib</outputDirectory>
<includeDependencies>true</includeDependencies>
<unpack>false</unpack>
</binaries>
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceNotIncludedBinaryIncluded/verify.bsh
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceNotIncludedBinaryIncluded/verify.bsh?rev=438528&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceNotIncludedBinaryIncluded/verify.bsh (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/module-sourceNotIncludedBinaryIncluded/verify.bsh Wed Aug 30 08:59:57 2006
@@ -0,0 +1,10 @@
+import java.io.*;
+
+boolean result = true;
+
+result = result && new File( basedir, "target/parent-1.0-bin.dir/lib/child1.jar" ).exists();
+result = result && new File( basedir, "target/parent-1.0-bin.dir/lib/child3.jar" ).exists();
+
+result = result && !new File( basedir, "target/parent-1.0-bin.dir/lib/child2.jar" ).exists();
+
+return result;
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/pom.xml?rev=438528&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/pom.xml (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/pom.xml Wed Aug 30 08:59:57 2006
@@ -0,0 +1,19 @@
+<?xml version="1.0"?><project>
+ <parent>
+ <groupId>test</groupId>
+ <artifactId>two-level-multimodule</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>test</groupId>
+ <artifactId>child-level1-project1</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <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/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/pom.xml
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/main/java/test/App.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/main/java/test/App.java?rev=438528&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/main/java/test/App.java (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/main/java/test/App.java Wed Aug 30 08:59:57 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/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/main/java/test/App.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/main/java/test/App.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/test/java/test/AppTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/test/java/test/AppTest.java?rev=438528&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/test/java/test/AppTest.java (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/test/java/test/AppTest.java Wed Aug 30 08:59:57 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/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/test/java/test/AppTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project1/src/test/java/test/AppTest.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/pom.xml?rev=438528&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/pom.xml (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/pom.xml Wed Aug 30 08:59:57 2006
@@ -0,0 +1,19 @@
+<?xml version="1.0"?><project>
+ <parent>
+ <artifactId>child-level1-project2</artifactId>
+ <groupId>test</groupId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>test</groupId>
+ <artifactId>child-level2-project1</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <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/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/pom.xml
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/main/java/test/App.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/main/java/test/App.java?rev=438528&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/main/java/test/App.java (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/main/java/test/App.java Wed Aug 30 08:59:57 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/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/main/java/test/App.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/main/java/test/App.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java?rev=438528&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java Wed Aug 30 08:59:57 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/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/child-level2-project1/src/test/java/test/AppTest.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/pom.xml?rev=438528&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/pom.xml (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/pom.xml Wed Aug 30 08:59:57 2006
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+ <parent>
+ <groupId>test</groupId>
+ <artifactId>two-level-multimodule</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>test</groupId>
+ <artifactId>child-level1-project2</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+ <packaging>pom</packaging>
+
+ <modules>
+ <module>child-level2-project1</module>
+ </modules>
+</project>
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/child-level1-project2/pom.xml
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/goals.txt
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/goals.txt?rev=438528&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/goals.txt (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/goals.txt Wed Aug 30 08:59:57 2006
@@ -0,0 +1 @@
+package assembly:directory
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/goals.txt
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/goals.txt
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/pom.xml?rev=438528&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/pom.xml (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/pom.xml Wed Aug 30 08:59:57 2006
@@ -0,0 +1,27 @@
+<?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>two-level-multimodule</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+ <packaging>pom</packaging>
+
+ <modules>
+ <module>child-level1-project1</module>
+ <module>child-level1-project2</module>
+ </modules>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <configuration>
+ <descriptors>
+ <descriptor>src/assemble/bin.xml</descriptor>
+ </descriptors>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/pom.xml
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/src/assemble/bin.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/src/assemble/bin.xml?rev=438528&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/src/assemble/bin.xml (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/src/assemble/bin.xml Wed Aug 30 08:59:57 2006
@@ -0,0 +1,17 @@
+
+<assembly>
+ <id>bin</id>
+ <formats>
+ <format>dir</format>
+ </formats>
+ <includeBaseDirectory>false</includeBaseDirectory>
+ <moduleSets>
+ <moduleSet>
+ <includeSubModules>false</includeSubModules>
+ <binaries>
+ <outputDirectory>modules</outputDirectory>
+ <unpack>false</unpack>
+ </binaries>
+ </moduleSet>
+ </moduleSets>
+</assembly>
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/src/assemble/bin.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/src/assemble/bin.xml
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/verify.bsh
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/verify.bsh?rev=438528&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/verify.bsh (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/it/multimodule/two-level-multimodule-dontIncludeSubModules/verify.bsh Wed Aug 30 08:59:57 2006
@@ -0,0 +1,19 @@
+import java.io.*;
+import java.net.*;
+import java.util.jar.*;
+
+boolean result = true;
+
+try
+{
+ result = new File( basedir, "target/two-level-multimodule-1.0-SNAPSHOT-bin.dir/modules/child-level1-project1-1.0-SNAPSHOT.jar" ).exists();
+
+ result = result && !new File( basedir, "target/two-level-multimodule-1.0-SNAPSHOT-bin.dir/modules/child-level2-project1-1.0-SNAPSHOT.jar" ).exists();
+}
+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/phase/DependencySetAssemblyPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java?rev=438528&r1=438527&r2=438528&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhase.java Wed Aug 30 08:59:57 2006
@@ -4,11 +4,13 @@
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
import org.apache.maven.plugin.assembly.archive.task.AddDependencySetsTask;
+import org.apache.maven.plugin.assembly.artifact.DependencyResolver;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
import org.apache.maven.plugins.assembly.model.Assembly;
import org.apache.maven.project.MavenProjectBuilder;
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.logging.AbstractLogEnabled;
+import org.codehaus.plexus.logging.Logger;
/**
* @plexus.component role="org.apache.maven.plugin.assembly.archive.phase.AssemblyArchiverPhase"
@@ -24,14 +26,22 @@
*/
private MavenProjectBuilder projectBuilder;
+ /**
+ * @plexus.requirement
+ */
+ private DependencyResolver dependencyResolver;
+
public DependencySetAssemblyPhase()
{
// used for plexus init
}
- public DependencySetAssemblyPhase( MavenProjectBuilder projectBuilder )
+ public DependencySetAssemblyPhase( MavenProjectBuilder projectBuilder, DependencyResolver dependencyResolver, Logger logger )
{
this.projectBuilder = projectBuilder;
+ this.dependencyResolver = dependencyResolver;
+
+ enableLogging( logger );
}
public void execute( Assembly assembly, Archiver archiver, AssemblerConfigurationSource configSource )
@@ -39,7 +49,7 @@
{
AddDependencySetsTask task =
new AddDependencySetsTask( assembly.getDependencySets(), configSource.getProject(), projectBuilder,
- getLogger() );
+ dependencyResolver, getLogger() );
task.setIncludeBaseDirectory( assembly.isIncludeBaseDirectory() );
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java?rev=438528&r1=438527&r2=438528&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/phase/ModuleSetAssemblyPhase.java Wed Aug 30 08:59:57 2006
@@ -8,6 +8,7 @@
import org.apache.maven.plugin.assembly.archive.task.AddArtifactTask;
import org.apache.maven.plugin.assembly.archive.task.AddDependencySetsTask;
import org.apache.maven.plugin.assembly.archive.task.AddFileSetsTask;
+import org.apache.maven.plugin.assembly.artifact.DependencyResolver;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
import org.apache.maven.plugin.assembly.utils.FilterUtils;
import org.apache.maven.plugin.assembly.utils.ProjectUtils;
@@ -20,6 +21,7 @@
import org.apache.maven.project.MavenProjectBuilder;
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.logging.AbstractLogEnabled;
+import org.codehaus.plexus.logging.Logger;
import java.io.File;
import java.io.IOException;
@@ -43,14 +45,23 @@
*/
private MavenProjectBuilder projectBuilder;
+ /**
+ * @plexus.requirement
+ */
+ private DependencyResolver dependencyResolver;
+
public ModuleSetAssemblyPhase()
{
// needed for plexus
}
- public ModuleSetAssemblyPhase( MavenProjectBuilder projectBuilder )
+ public ModuleSetAssemblyPhase( MavenProjectBuilder projectBuilder, DependencyResolver dependencyResolver,
+ Logger logger )
{
this.projectBuilder = projectBuilder;
+ this.dependencyResolver = dependencyResolver;
+
+ enableLogging( logger );
}
public void execute( Assembly assembly, Archiver archiver, AssemblerConfigurationSource configSource )
@@ -64,7 +75,7 @@
{
ModuleSet moduleSet = ( ModuleSet ) i.next();
- Set moduleProjects = getModuleProjects( moduleSet, configSource );
+ Set moduleProjects = getModuleProjects( moduleSet, configSource, moduleSet.isIncludeSubModules() );
ModuleSources sources = moduleSet.getSources();
ModuleBinaries binaries = moduleSet.getBinaries();
@@ -119,11 +130,11 @@
}
List depSets = binaries.getDependencySets();
-
+
if ( ( depSets == null || depSets.isEmpty() ) && binaries.isIncludeDependencies() )
{
DependencySet impliedDependencySet = new DependencySet();
-
+
impliedDependencySet.setOutputDirectory( binaries.getOutputDirectory() );
impliedDependencySet.setOutputFileNameMapping( binaries.getOutputFileNameMapping() );
impliedDependencySet.setFileMode( binaries.getFileMode() );
@@ -131,10 +142,10 @@
impliedDependencySet.setExcludes( binaries.getExcludes() );
impliedDependencySet.setIncludes( binaries.getIncludes() );
impliedDependencySet.setUnpack( binaries.isUnpack() );
-
+
depSets = Collections.singletonList( impliedDependencySet );
}
-
+
if ( depSets != null )
{
// FIXME: This will produce unpredictable results when module dependencies have a version conflict.
@@ -149,8 +160,8 @@
getLogger().debug( "Processing binary dependencies for module project: " + moduleProject.getId() );
AddDependencySetsTask task =
- new AddDependencySetsTask( depSets, moduleProject, projectBuilder, getLogger() );
-
+ new AddDependencySetsTask( depSets, moduleProject, projectBuilder, dependencyResolver, getLogger() );
+
task.setIncludeBaseDirectory( includeBaseDirectory );
task.setDefaultOutputDirectory( binaries.getOutputDirectory() );
task.setDefaultOutputFileNameMapping( binaries.getOutputFileNameMapping() );
@@ -253,7 +264,8 @@
}
}
- protected Set getModuleProjects( ModuleSet moduleSet, AssemblerConfigurationSource configSource )
+ protected Set getModuleProjects( ModuleSet moduleSet, AssemblerConfigurationSource configSource,
+ boolean includeSubModules )
throws ArchiveCreationException
{
MavenProject project = configSource.getProject();
@@ -261,7 +273,9 @@
Set moduleProjects;
try
{
- moduleProjects = ProjectUtils.getProjectModules( project, configSource.getReactorProjects(), getLogger() );
+ moduleProjects =
+ ProjectUtils.getProjectModules( project, configSource.getReactorProjects(), includeSubModules,
+ getLogger() );
}
catch ( IOException e )
{
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java?rev=438528&r1=438527&r2=438528&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/archive/task/AddDependencySetsTask.java Wed Aug 30 08:59:57 2006
@@ -1,10 +1,13 @@
package org.apache.maven.plugin.assembly.archive.task;
import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
+import org.apache.maven.artifact.resolver.ArtifactResolutionException;
import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
-import org.apache.maven.plugin.assembly.filter.AssemblyScopeArtifactFilter;
+import org.apache.maven.plugin.assembly.artifact.DependencyResolver;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
import org.apache.maven.plugin.assembly.utils.AssemblyFormatUtils;
import org.apache.maven.plugin.assembly.utils.FilterUtils;
@@ -12,6 +15,7 @@
import org.apache.maven.project.MavenProject;
import org.apache.maven.project.MavenProjectBuilder;
import org.apache.maven.project.ProjectBuildingException;
+import org.apache.maven.project.artifact.InvalidDependencyVersionException;
import org.codehaus.plexus.archiver.Archiver;
import org.codehaus.plexus.archiver.ArchiverException;
import org.codehaus.plexus.logging.Logger;
@@ -19,7 +23,6 @@
import java.io.File;
import java.util.ArrayList;
import java.util.Collections;
-import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
@@ -53,12 +56,15 @@
private String defaultOutputFileNameMapping;
+ private final DependencyResolver dependencyResolver;
+
public AddDependencySetsTask( List dependencySets, MavenProject project, MavenProjectBuilder projectBuilder,
- Logger logger )
+ DependencyResolver dependencyResolver, Logger logger )
{
this.dependencySets = dependencySets;
this.project = project;
this.projectBuilder = projectBuilder;
+ this.dependencyResolver = dependencyResolver;
this.logger = logger;
}
@@ -70,6 +76,12 @@
logger.debug( "No dependency sets specified." );
return;
}
+
+ List deps = project.getDependencies();
+ if ( deps == null || deps.isEmpty() )
+ {
+ logger.debug( "Project " + project.getId() + " has no dependencies. Skipping dependency set addition." );
+ }
for ( Iterator i = dependencySets.iterator(); i.hasNext(); )
{
@@ -85,7 +97,7 @@
{
logger.info( "Processing DependencySet" );
- Set dependencyArtifacts = getDependencyArtifacts( project, dependencySet );
+ Set dependencyArtifacts = resolveDependencyArtifacts( dependencySet, configSource );
for ( Iterator j = dependencyArtifacts.iterator(); j.hasNext(); )
{
@@ -125,7 +137,40 @@
}
}
- private void addNonArchiveDependency( Artifact depArtifact, MavenProject depProject, DependencySet dependencySet,
+ protected Set resolveDependencyArtifacts( DependencySet dependencySet, AssemblerConfigurationSource configSource )
+ throws ArchiveCreationException
+ {
+ ArtifactRepository localRepository = configSource.getLocalRepository();
+
+ List additionalRemoteRepositories = configSource.getRemoteRepositories();
+
+ Set dependencyArtifacts;
+ try
+ {
+ dependencyArtifacts =
+ dependencyResolver.resolveDependencies( project, dependencySet.getScope(), localRepository,
+ additionalRemoteRepositories );
+ }
+ catch ( ArtifactResolutionException e )
+ {
+ throw new ArchiveCreationException( "Failed to resolve dependencies for project: " + project.getId(), e );
+ }
+ catch ( ArtifactNotFoundException e )
+ {
+ throw new ArchiveCreationException( "Failed to resolve dependencies for project: " + project.getId(), e );
+ }
+ catch ( InvalidDependencyVersionException e )
+ {
+ throw new ArchiveCreationException( "Failed to resolve dependencies for project: " + project.getId(), e );
+ }
+
+ FilterUtils.filterArtifacts( dependencyArtifacts, dependencySet.getIncludes(), dependencySet.getExcludes(),
+ true, Collections.EMPTY_LIST, logger );
+
+ return dependencyArtifacts;
+ }
+
+ protected void addNonArchiveDependency( Artifact depArtifact, MavenProject depProject, DependencySet dependencySet,
Archiver archiver )
throws AssemblyFormattingException, ArchiveCreationException
{
@@ -159,24 +204,6 @@
{
throw new ArchiveCreationException( "Error adding file to archive: " + e.getMessage(), e );
}
- }
-
- protected Set getDependencyArtifacts( MavenProject project, DependencySet dependencySet )
- {
- Set dependencyArtifacts = new HashSet();
-
- Set projectArtifacts = project.getArtifacts();
- if ( projectArtifacts != null )
- {
- dependencyArtifacts.addAll( projectArtifacts );
- }
-
- AssemblyScopeArtifactFilter scopeFilter = new AssemblyScopeArtifactFilter( dependencySet.getScope() );
-
- FilterUtils.filterArtifacts( dependencyArtifacts, dependencySet.getIncludes(), dependencySet.getExcludes(),
- true, Collections.singletonList( scopeFilter ), logger );
-
- return dependencyArtifacts;
}
public boolean isIncludeBaseDirectory()
Added: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java?rev=438528&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java Wed Aug 30 08:59:57 2006
@@ -0,0 +1,127 @@
+package org.apache.maven.plugin.assembly.artifact;
+
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
+import org.apache.maven.artifact.resolver.ArtifactResolutionException;
+import org.apache.maven.artifact.resolver.ArtifactResolutionResult;
+import org.apache.maven.artifact.resolver.ArtifactResolver;
+import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
+import org.apache.maven.plugin.assembly.filter.AssemblyScopeArtifactFilter;
+import org.apache.maven.plugin.assembly.utils.FilterUtils;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.project.artifact.InvalidDependencyVersionException;
+import org.apache.maven.project.artifact.MavenMetadataSource;
+import org.codehaus.plexus.logging.AbstractLogEnabled;
+import org.codehaus.plexus.logging.Logger;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+/**
+ * @plexus.component role="org.apache.maven.plugin.assembly.artifact.DependencyResolver" role-hint="default"
+ *
+ * @author jdcasey
+ */
+public class DefaultDependencyResolver
+ extends AbstractLogEnabled implements DependencyResolver
+{
+
+ /**
+ * @plexus.requirement
+ */
+ private ArtifactResolver resolver;
+
+ /**
+ * @plexus.requirement
+ */
+ private ArtifactMetadataSource metadataSource;
+
+ /**
+ * @plexus.requirement
+ */
+ private ArtifactFactory factory;
+
+ public DefaultDependencyResolver()
+ {
+ // for plexus init
+ }
+
+ public DefaultDependencyResolver( ArtifactResolver resolver, ArtifactMetadataSource metadataSource,
+ ArtifactFactory factory, Logger logger )
+ {
+ this.resolver = resolver;
+ this.metadataSource = metadataSource;
+ this.factory = factory;
+
+ enableLogging( logger );
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.maven.plugin.assembly.artifact.DependencyResolver#resolveDependencies(org.apache.maven.project.MavenProject, java.lang.String, org.apache.maven.artifact.repository.ArtifactRepository, java.util.List)
+ */
+ public Set resolveDependencies( MavenProject project, String scope, ArtifactRepository localRepository,
+ List remoteRepositories )
+ throws InvalidDependencyVersionException, ArtifactResolutionException, ArtifactNotFoundException
+ {
+ List repos = aggregateRemoteArtifactRepositories( remoteRepositories, project );
+
+ ArtifactFilter filter = new AssemblyScopeArtifactFilter( scope );
+
+ // TODO: such a call in MavenMetadataSource too - packaging not really the intention of type
+ Artifact artifact =
+ factory.createBuildArtifact( project.getGroupId(), project.getArtifactId(), project.getVersion(),
+ project.getPackaging() );
+
+ Set dependencyArtifacts =
+ MavenMetadataSource.createArtifacts( factory, project.getDependencies(), null, filter, project );
+
+ ArtifactResolutionResult result =
+ resolver.resolveTransitively( dependencyArtifacts, artifact, localRepository, repos, metadataSource, filter );
+
+ getLogger().debug( "While resolving dependencies of " + project.getId() + ":" );
+
+ FilterUtils.reportFilteringStatistics( Collections.singleton( filter ), getLogger() );
+
+ return result.getArtifacts();
+ }
+
+ private List aggregateRemoteArtifactRepositories( List remoteRepositories, MavenProject project )
+ {
+ List repoLists = new ArrayList();
+
+ repoLists.add( remoteRepositories );
+ repoLists.add( project.getRemoteArtifactRepositories() );
+
+ List remoteRepos = new ArrayList();
+ Set encounteredUrls = new HashSet();
+
+ for ( Iterator listIterator = repoLists.iterator(); listIterator.hasNext(); )
+ {
+ List repositoryList = ( List ) listIterator.next();
+
+ if ( repositoryList != null && !repositoryList.isEmpty() )
+ {
+ for ( Iterator it = repositoryList.iterator(); it.hasNext(); )
+ {
+ ArtifactRepository repo = ( ArtifactRepository ) it.next();
+
+ if ( !encounteredUrls.contains( repo.getUrl() ) )
+ {
+ remoteRepos.add( repo );
+ encounteredUrls.add( repo.getUrl() );
+ }
+ }
+ }
+ }
+
+ return remoteRepos;
+ }
+
+}
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DefaultDependencyResolver.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java?rev=438528&view=auto
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java (added)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java Wed Aug 30 08:59:57 2006
@@ -0,0 +1,19 @@
+package org.apache.maven.plugin.assembly.artifact;
+
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
+import org.apache.maven.artifact.resolver.ArtifactResolutionException;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.project.artifact.InvalidDependencyVersionException;
+
+import java.util.List;
+import java.util.Set;
+
+public interface DependencyResolver
+{
+
+ public abstract Set resolveDependencies( MavenProject project, String scope, ArtifactRepository localRepository,
+ List remoteRepositories )
+ throws InvalidDependencyVersionException, ArtifactResolutionException, ArtifactNotFoundException;
+
+}
\ No newline at end of file
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/artifact/DependencyResolver.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AssemblyMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AssemblyMojo.java?rev=438528&r1=438527&r2=438528&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AssemblyMojo.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AssemblyMojo.java Wed Aug 30 08:59:57 2006
@@ -24,8 +24,8 @@
* @author <a href="mailto:brett@apache.org">Brett Porter</a>
* @author <a href="mailto:vincent.siveton@gmail.com">Vincent Siveton</a>
* @version $Id$
+ *
* @goal assembly
- * @requiresDependencyResolution test
* @execute phase="package"
* @aggregator
*/
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AttachedAssemblyMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AttachedAssemblyMojo.java?rev=438528&r1=438527&r2=438528&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AttachedAssemblyMojo.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/AttachedAssemblyMojo.java Wed Aug 30 08:59:57 2006
@@ -24,8 +24,8 @@
*
* @author <a href="mailto:jerome@coffeebreaks.org">Jerome Lacoste</a>
* @version $Id$
+ *
* @goal attached
- * @requiresDependencyResolution test
* @aggregator
*/
public class AttachedAssemblyMojo
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/DirectoryInlineMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/DirectoryInlineMojo.java?rev=438528&r1=438527&r2=438528&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/DirectoryInlineMojo.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/DirectoryInlineMojo.java Wed Aug 30 08:59:57 2006
@@ -23,8 +23,8 @@
* launching a parallel lifecycle build.
*
* @author <a href="mailto:gscokart@users.sourceforge.net">Gilles Scokart</a>
+ *
* @goal directory-inline
- * @requiresDependencyResolution test
* @aggregator
*/
public class DirectoryInlineMojo
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/DirectoryMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/DirectoryMojo.java?rev=438528&r1=438527&r2=438528&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/DirectoryMojo.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/DirectoryMojo.java Wed Aug 30 08:59:57 2006
@@ -22,7 +22,6 @@
* Assemble an application bundle or distribution.
*
* @goal directory
- * @requiresDependencyResolution test
* @execute phase="package"
* @aggregator
*/
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/SingleAssemblyMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/SingleAssemblyMojo.java?rev=438528&r1=438527&r2=438528&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/SingleAssemblyMojo.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/mojos/SingleAssemblyMojo.java Wed Aug 30 08:59:57 2006
@@ -27,7 +27,6 @@
* @author <a href="mailto:brett@apache.org">Brett Porter</a>
* @version $Id$
* @goal single
- * @requiresDependencyResolution test
*/
public class SingleAssemblyMojo
extends AbstractAssemblyMojo
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/FilterUtils.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/FilterUtils.java?rev=438528&r1=438527&r2=438528&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/FilterUtils.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/FilterUtils.java Wed Aug 30 08:59:57 2006
@@ -1,6 +1,7 @@
package org.apache.maven.plugin.assembly.utils;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
@@ -121,7 +122,13 @@
}
}
- for ( Iterator it = allFilters.iterator(); it.hasNext(); )
+
+ reportFilteringStatistics( allFilters, logger );
+ }
+
+ public static void reportFilteringStatistics( Collection filters, Logger logger )
+ {
+ for ( Iterator it = filters.iterator(); it.hasNext(); )
{
ArtifactFilter f = (ArtifactFilter) it.next();
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/ProjectUtils.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/ProjectUtils.java?rev=438528&r1=438527&r2=438528&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/ProjectUtils.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/java/org/apache/maven/plugin/assembly/utils/ProjectUtils.java Wed Aug 30 08:59:57 2006
@@ -5,6 +5,7 @@
import java.io.File;
import java.io.IOException;
+import java.util.Collections;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
@@ -17,9 +18,12 @@
{
}
- public static Set getProjectModules( MavenProject project, List reactorProjects, Logger logger )
+ public static Set getProjectModules( MavenProject project, List reactorProjects, boolean includeSubModules,
+ Logger logger )
throws IOException
{
+ Set singleParentSet = Collections.singleton( project );
+
Set moduleCandidates = new HashSet( reactorProjects );
Set modules = new HashSet();
@@ -40,26 +44,36 @@
for ( Iterator candidateIterator = moduleCandidates.iterator(); candidateIterator.hasNext(); )
{
- MavenProject moduleCandidate = (MavenProject) candidateIterator.next();
+ MavenProject moduleCandidate = ( MavenProject ) candidateIterator.next();
if ( moduleCandidate.getFile() == null )
{
logger.warn( "Cannot compute whether " + moduleCandidate.getId() + " is a module of: "
- + project.getId() + "; it does not have an associated POM file on the local filesystem." );
+ + project.getId()
+ + "; it does not have an associated POM file on the local filesystem." );
continue;
}
- Set currentPotentialParents = new HashSet( modules );
-
+ Set currentPotentialParents;
+ if ( includeSubModules )
+ {
+ currentPotentialParents = new HashSet( modules );
+ }
+ else
+ {
+ currentPotentialParents = singleParentSet;
+ }
+
for ( Iterator parentIterator = currentPotentialParents.iterator(); parentIterator.hasNext(); )
{
- MavenProject potentialParent = (MavenProject) parentIterator.next();
+ MavenProject potentialParent = ( MavenProject ) parentIterator.next();
if ( potentialParent.getFile() == null )
{
logger.warn( "Cannot use: " + moduleCandidate.getId()
- + " as a potential module-parent while computing the module set for: " + project.getId()
- + "; it does not have an associated POM file on the local filesystem." );
+ + " as a potential module-parent while computing the module set for: "
+ + project.getId()
+ + "; it does not have an associated POM file on the local filesystem." );
continue;
}
@@ -82,7 +96,8 @@
}
}
}
- } while ( changed != 0 );
+ }
+ while ( changed != 0 );
// remove the master project from the modules set, now that we're done
// using it as a set of potential module
@@ -99,19 +114,19 @@
File basedir = mainProject.getBasedir();
File moduleFile = moduleProject.getFile().getCanonicalFile();
-
+
File moduleBasedir = moduleProject.getBasedir();
-
+
if ( moduleBasedir == null )
{
moduleBasedir = new File( "." );
}
-
+
moduleBasedir = moduleBasedir.getCanonicalFile();
for ( Iterator it = modules.iterator(); it.hasNext(); )
{
- String moduleSubpath = (String) it.next();
+ String moduleSubpath = ( String ) it.next();
File moduleDir = new File( basedir, moduleSubpath ).getCanonicalFile();
Modified: maven/plugins/trunk/maven-assembly-plugin/src/main/mdo/descriptor.mdo
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/main/mdo/descriptor.mdo?rev=438528&r1=438527&r2=438528&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/main/mdo/descriptor.mdo (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/main/mdo/descriptor.mdo Wed Aug 30 08:59:57 2006
@@ -481,6 +481,17 @@
<version>1.0.0</version>
<fields>
<field>
+ <name>includeSubModules</name>
+ <version>1.0.0</version>
+ <type>boolean</type>
+ <defaultValue>true</defaultValue>
+ <description>
+ If set to false, the plugin will exclude sub-modules from processing in this ModuleSet.
+ Otherwise, it will process all sub-modules, each subject to include/exclude rules.
+ Default value is true.
+ </description>
+ </field>
+ <field>
<name>includes</name>
<version>1.0.0</version>
<description>
Modified: maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java?rev=438528&r1=438527&r2=438528&view=diff
==============================================================================
--- maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java (original)
+++ maven/plugins/trunk/maven-assembly-plugin/src/test/java/org/apache/maven/plugin/assembly/archive/phase/DependencySetAssemblyPhaseTest.java Wed Aug 30 08:59:57 2006
@@ -1,28 +1,23 @@
package org.apache.maven.plugin.assembly.archive.phase;
import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.repository.ArtifactRepository;
import org.apache.maven.model.Model;
-import org.apache.maven.plugin.assembly.AssemblerConfigurationSource;
import org.apache.maven.plugin.assembly.InvalidAssemblerConfigurationException;
import org.apache.maven.plugin.assembly.archive.ArchiveCreationException;
-import org.apache.maven.plugin.assembly.archive.task.testutils.MockAndControlForAddArtifactTask;
+import org.apache.maven.plugin.assembly.archive.task.testutils.MockAndControlForAddDependencySetsTask;
+import org.apache.maven.plugin.assembly.artifact.DependencyResolver;
import org.apache.maven.plugin.assembly.format.AssemblyFormattingException;
import org.apache.maven.plugin.assembly.testutils.MockManager;
import org.apache.maven.plugins.assembly.model.Assembly;
import org.apache.maven.plugins.assembly.model.DependencySet;
import org.apache.maven.project.MavenProject;
import org.apache.maven.project.MavenProjectBuilder;
-import org.apache.maven.project.ProjectBuildingException;
import org.codehaus.plexus.logging.Logger;
import org.codehaus.plexus.logging.console.ConsoleLogger;
-import org.easymock.MockControl;
import java.io.IOException;
import java.util.Collections;
-import java.util.List;
-import junit.framework.Assert;
import junit.framework.TestCase;
public class DependencySetAssemblyPhaseTest
@@ -51,35 +46,33 @@
assembly.setIncludeBaseDirectory( false );
assembly.addDependencySet( ds );
- MockAndControlForAddArtifactTask macTask = new MockAndControlForAddArtifactTask( mockManager );
+ MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mockManager );
macTask.expectArtifactGetFile();
macTask.expectArtifactGetType( "jar" );
- macTask.expectArtifactGetScope( Artifact.SCOPE_COMPILE );
macTask.expectGetClassifier( null );
macTask.expectIsSnapshot( false );
macTask.expectGetArtifactHandler();
+
+ macTask.expectCSGetRepositories( null, null );
+ macTask.expectResolveDependencies( Collections.singleton( macTask.artifact ) );
macTask.expectAddFile( "out/artifact", 8 );
project.setArtifacts( Collections.singleton( macTask.artifact ) );
- MockAndControlForConfigSource macCS = new MockAndControlForConfigSource();
-
- macCS.enableGetProject( project );
- macCS.enableGetFinalName( "final-name" );
- macCS.enableGetRepositories( null, Collections.EMPTY_LIST );
+ macTask.expectGetProject( project );
+ macTask.expectCSGetFinalName( "final-name" );
Logger logger = new ConsoleLogger( Logger.LEVEL_DEBUG, "test" );
- MockAndControlForProjectBuilder macPB = new MockAndControlForProjectBuilder();
-
MavenProject depProject = new MavenProject( new Model() );
- macPB.expectBuildFromRepository( depProject );
+
+ macTask.expectBuildFromRepository( depProject );
mockManager.replayAll();
- createPhase( macPB.projectBuilder, logger ).execute( assembly, macTask.archiver, macCS.configSource );
+ createPhase( macTask, logger ).execute( assembly, macTask.archiver, macTask.configSource );
mockManager.verifyAll();
}
@@ -94,90 +87,33 @@
Logger logger = new ConsoleLogger( Logger.LEVEL_DEBUG, "test" );
- MockAndControlForProjectBuilder macPB = new MockAndControlForProjectBuilder();
-
- MockAndControlForConfigSource macCS = new MockAndControlForConfigSource();
- macCS.enableGetProject( null );
+ MockAndControlForAddDependencySetsTask macTask = new MockAndControlForAddDependencySetsTask( mockManager );
+
+ macTask.expectGetProject( null );
mockManager.replayAll();
- createPhase( macPB.projectBuilder, logger ).execute( assembly, null, macCS.configSource );
+ createPhase( macTask, logger ).execute( assembly, null, macTask.configSource );
mockManager.verifyAll();
}
- private DependencySetAssemblyPhase createPhase( MavenProjectBuilder projectBuilder, Logger logger )
- {
- DependencySetAssemblyPhase phase = new DependencySetAssemblyPhase( projectBuilder );
-
- phase.enableLogging( logger );
-
- return phase;
- }
-
- private final class MockAndControlForConfigSource
+ private DependencySetAssemblyPhase createPhase( MockAndControlForAddDependencySetsTask macTask, Logger logger )
{
- AssemblerConfigurationSource configSource;
-
- MockControl control;
-
- MockAndControlForConfigSource()
- {
- control = MockControl.createControl( AssemblerConfigurationSource.class );
- mockManager.add( control );
-
- configSource = ( AssemblerConfigurationSource ) control.getMock();
- }
-
- public void enableGetRepositories( ArtifactRepository localRepo, List remoteRepos )
- {
- configSource.getLocalRepository();
- control.setReturnValue( localRepo, MockControl.ONE_OR_MORE );
-
- configSource.getRemoteRepositories();
- control.setReturnValue( remoteRepos, MockControl.ONE_OR_MORE );
- }
+ MavenProjectBuilder projectBuilder = null;
+ DependencyResolver dependencyResolver = null;
- public void enableGetFinalName( String finalName )
+ if ( macTask != null )
{
- configSource.getFinalName();
- control.setReturnValue( finalName, MockControl.ONE_OR_MORE );
+ projectBuilder = macTask.projectBuilder;
+ dependencyResolver = macTask.dependencyResolver;
}
-
- void enableGetProject( MavenProject project )
- {
- configSource.getProject();
- control.setReturnValue( project, MockControl.ONE_OR_MORE );
- }
- }
-
- private final class MockAndControlForProjectBuilder
- {
- MavenProjectBuilder projectBuilder;
- MockControl control;
-
- public MockAndControlForProjectBuilder()
- {
- control = MockControl.createControl( MavenProjectBuilder.class );
- mockManager.add( control );
-
- projectBuilder = ( MavenProjectBuilder ) control.getMock();
- }
+ DependencySetAssemblyPhase phase = new DependencySetAssemblyPhase( projectBuilder, dependencyResolver, logger );
- public void expectBuildFromRepository( MavenProject project )
- {
- try
- {
- projectBuilder.buildFromRepository( null, null, null );
- control.setMatcher( MockControl.ALWAYS_MATCHER );
- control.setReturnValue( project, MockControl.ONE_OR_MORE );
- }
- catch ( ProjectBuildingException e )
- {
- Assert.fail( "should never happen" );
- }
- }
+ phase.enableLogging( logger );
+
+ return phase;
}
}