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 2008/02/20 19:53:24 UTC
svn commit: r629571 - in /maven/components/trunk:
maven-core/src/main/java/org/apache/maven/
maven-core/src/main/java/org/apache/maven/extension/
maven-core/src/test/java/org/apache/maven/extension/
maven-embedder/src/main/java/org/apache/maven/embedde...
Author: jdcasey
Date: Wed Feb 20 10:53:09 2008
New Revision: 629571
URL: http://svn.apache.org/viewvc?rev=629571&view=rev
Log:
Ignore missing modules during extension-scanning when MavenEmbedder.readProject(..) is called. At other times, as in the case of normal builds, don't suppress missing module exceptions.
Added:
maven/components/trunk/maven-embedder/src/test/projects/readProject-missingModuleIgnored/
maven/components/trunk/maven-embedder/src/test/projects/readProject-missingModuleIgnored/pom.xml (with props)
Modified:
maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/BuildExtensionScanner.java
maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/DefaultBuildExtensionScanner.java
maven/components/trunk/maven-core/src/test/java/org/apache/maven/extension/DefaultBuildExtensionScannerTest.java
maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java
maven/components/trunk/maven-embedder/src/test/java/org/apache/maven/embedder/MavenEmbedderTest.java
Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java?rev=629571&r1=629570&r2=629571&view=diff
==============================================================================
--- maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java (original)
+++ maven/components/trunk/maven-core/src/main/java/org/apache/maven/DefaultMaven.java Wed Feb 20 10:53:09 2008
@@ -266,7 +266,7 @@
// instances just-in-time.
try
{
- buildExtensionScanner.scanForBuildExtensions( files, request );
+ buildExtensionScanner.scanForBuildExtensions( files, request, false );
}
catch ( ExtensionScanningException e )
{
Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/BuildExtensionScanner.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/BuildExtensionScanner.java?rev=629571&r1=629570&r2=629571&view=diff
==============================================================================
--- maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/BuildExtensionScanner.java (original)
+++ maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/BuildExtensionScanner.java Wed Feb 20 10:53:09 2008
@@ -31,11 +31,13 @@
String ROLE = BuildExtensionScanner.class.getName();
void scanForBuildExtensions( List files,
- MavenExecutionRequest request )
+ MavenExecutionRequest request,
+ boolean ignoreMissingModules )
throws ExtensionScanningException, MissingModuleException;
void scanForBuildExtensions( File pom,
- MavenExecutionRequest request )
+ MavenExecutionRequest request,
+ boolean ignoreMissingModules )
throws ExtensionScanningException, MissingModuleException;
}
Modified: maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/DefaultBuildExtensionScanner.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/DefaultBuildExtensionScanner.java?rev=629571&r1=629570&r2=629571&view=diff
==============================================================================
--- maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/DefaultBuildExtensionScanner.java (original)
+++ maven/components/trunk/maven-core/src/main/java/org/apache/maven/extension/DefaultBuildExtensionScanner.java Wed Feb 20 10:53:09 2008
@@ -89,38 +89,41 @@
}
public void scanForBuildExtensions( List files,
- MavenExecutionRequest request )
+ MavenExecutionRequest request,
+ boolean ignoreMissingModules )
throws ExtensionScanningException, MissingModuleException
{
List visited = new ArrayList();
-
+
List internalFiles = new ArrayList();
-
+
internalFiles.addAll(files);
for ( Iterator it = files.iterator(); it.hasNext(); )
{
File pom = (File) it.next();
- scanInternal( pom, request, visited, internalFiles );
+ scanInternal( pom, request, visited, internalFiles, ignoreMissingModules );
}
}
public void scanForBuildExtensions( File pom,
- MavenExecutionRequest request )
+ MavenExecutionRequest request,
+ boolean ignoreMissingModules )
throws ExtensionScanningException, MissingModuleException
{
List internalFiles = new ArrayList();
-
+
internalFiles.add( pom );
-
- scanInternal( pom, request, new ArrayList(), internalFiles );
+
+ scanInternal( pom, request, new ArrayList(), internalFiles, ignoreMissingModules );
}
private void scanInternal( File pom,
MavenExecutionRequest request,
List visitedModelIds,
- List reactorFiles )
+ List reactorFiles,
+ boolean ignoreMissingModules )
throws ExtensionScanningException, MissingModuleException
{
@@ -195,7 +198,8 @@
request,
originalRemoteRepositories,
visitedModelIds,
- reactorFiles );
+ reactorFiles,
+ ignoreMissingModules );
}
}
}
@@ -251,7 +255,8 @@
MavenExecutionRequest request,
List originalRemoteRepositories,
List visitedModelIds,
- List reactorFiles )
+ List reactorFiles,
+ boolean ignoreMissingModules )
throws ExtensionScanningException, MissingModuleException
{
// FIXME: This gets a little sticky, because modules can be added by profiles that require
@@ -310,12 +315,19 @@
if ( !modulePomDirectory.exists() )
{
- throw new MissingModuleException( moduleSubpath, modulePomDirectory, containingPom );
+ if ( ignoreMissingModules )
+ {
+ continue;
+ }
+ else
+ {
+ throw new MissingModuleException( moduleSubpath, modulePomDirectory, containingPom );
+ }
}
-
+
reactorFiles.add( modulePomDirectory );
-
- scanInternal( modulePomDirectory, request, visitedModelIds, reactorFiles );
+
+ scanInternal( modulePomDirectory, request, visitedModelIds, reactorFiles, ignoreMissingModules );
}
}
}
Modified: maven/components/trunk/maven-core/src/test/java/org/apache/maven/extension/DefaultBuildExtensionScannerTest.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-core/src/test/java/org/apache/maven/extension/DefaultBuildExtensionScannerTest.java?rev=629571&r1=629570&r2=629571&view=diff
==============================================================================
--- maven/components/trunk/maven-core/src/test/java/org/apache/maven/extension/DefaultBuildExtensionScannerTest.java (original)
+++ maven/components/trunk/maven-core/src/test/java/org/apache/maven/extension/DefaultBuildExtensionScannerTest.java Wed Feb 20 10:53:09 2008
@@ -134,7 +134,8 @@
new DefaultBuildExtensionScanner( extensionManager, projectBuilder, modelLineageBuilder,
modelInterpolator, new ConsoleLogger( Logger.LEVEL_DEBUG,
"test" ) ).scanForBuildExtensions( pomFile,
- request );
+ request,
+ false );
mockManager.verifyAll();
}
@@ -213,7 +214,8 @@
new DefaultBuildExtensionScanner( extensionManager, projectBuilder, modelLineageBuilder,
modelInterpolator, new ConsoleLogger( Logger.LEVEL_DEBUG,
"test" ) ).scanForBuildExtensions( pomFile,
- request );
+ request,
+ false );
mockManager.verifyAll();
}
@@ -324,7 +326,8 @@
new DefaultBuildExtensionScanner( extensionManager, projectBuilder, modelLineageBuilder,
modelInterpolator, new ConsoleLogger( Logger.LEVEL_DEBUG,
"test" ) ).scanForBuildExtensions( pomFile,
- request );
+ request,
+ false );
mockManager.verifyAll();
}
Modified: maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java?rev=629571&r1=629570&r2=629571&view=diff
==============================================================================
--- maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java (original)
+++ maven/components/trunk/maven-embedder/src/main/java/org/apache/maven/embedder/MavenEmbedder.java Wed Feb 20 10:53:09 2008
@@ -363,7 +363,7 @@
{
getLogger().debug( "Scanning for extensions: " + mavenProject );
- extensionScanner.scanForBuildExtensions( mavenProject, request );
+ extensionScanner.scanForBuildExtensions( mavenProject, request, true );
getLogger().debug( "Building MavenProject instance: " + mavenProject );
Modified: maven/components/trunk/maven-embedder/src/test/java/org/apache/maven/embedder/MavenEmbedderTest.java
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/test/java/org/apache/maven/embedder/MavenEmbedderTest.java?rev=629571&r1=629570&r2=629571&view=diff
==============================================================================
--- maven/components/trunk/maven-embedder/src/test/java/org/apache/maven/embedder/MavenEmbedderTest.java (original)
+++ maven/components/trunk/maven-embedder/src/test/java/org/apache/maven/embedder/MavenEmbedderTest.java Wed Feb 20 10:53:09 2008
@@ -338,6 +338,15 @@
assertEquals( "scm:svn:https://host/trunk/parent/modules/child1", project.getScm().getDeveloperConnection() );
}
+ public void testProjectReading_SkipMissingModuleSilently()
+ throws Exception
+ {
+ File pomFile = new File( basedir,
+ "src/test/projects/readProject-missingModuleIgnored/pom.xml" );
+
+ maven.readProject( pomFile );
+ }
+
/*
public void testProjectReadingWithDistributionStatus()
throws Exception
Added: maven/components/trunk/maven-embedder/src/test/projects/readProject-missingModuleIgnored/pom.xml
URL: http://svn.apache.org/viewvc/maven/components/trunk/maven-embedder/src/test/projects/readProject-missingModuleIgnored/pom.xml?rev=629571&view=auto
==============================================================================
--- maven/components/trunk/maven-embedder/src/test/projects/readProject-missingModuleIgnored/pom.xml (added)
+++ maven/components/trunk/maven-embedder/src/test/projects/readProject-missingModuleIgnored/pom.xml Wed Feb 20 10:53:09 2008
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?><project>
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>missing.module</groupId>
+ <artifactId>parent</artifactId>
+ <version>1</version>
+ <packaging>pom</packaging>
+
+ <modules>
+ <module>child1</module>
+ </modules>
+
+</project>
\ No newline at end of file
Propchange: maven/components/trunk/maven-embedder/src/test/projects/readProject-missingModuleIgnored/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/components/trunk/maven-embedder/src/test/projects/readProject-missingModuleIgnored/pom.xml
------------------------------------------------------------------------------
svn:executable = *
Propchange: maven/components/trunk/maven-embedder/src/test/projects/readProject-missingModuleIgnored/pom.xml
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"