Issue Details (XML | Word | Printable)

Key: MNG-3391
Type: Bug Bug
Status: Reopened Reopened
Priority: Blocker Blocker
Assignee: Shane Isbell
Reporter: Carlos Sanchez
Votes: 7
Watchers: 9
Operations

If you were logged in you would be able to see more operations.
Maven 2

StackOverflowError in DefaultMavenProjectBuilder

Created: 08/Feb/08 12:37 PM   Updated: 11/Nov/08 11:46 AM
Component/s: Inheritance and Interpolation
Affects Version/s: 3.0-alpha-1, 3.0
Fix Version/s: 3.0-alpha-3

Time Tracking:
Not Specified

File Attachments: 1. XML File pom.xml (0.6 kB)

Issue Links:
Duplicate
 
Related
dependent
 


 Description  « Hide
checkout https://svn.apache.org/repos/asf/servicemix/smx3/trunk and try to run a goail in samples/cxf-wsdl-first
if you checkout only https://svn.apache.org/repos/asf/servicemix/smx3/trunk/samples/cxf-wsdl-first there's no problem, so it must be something to do with the parents

Revisions tested: 619946 and 609730

$ mvn process-test-resources
[WARNING] Deprecated expression: ${version} - missing prefix. Use ${pom.version} (model: org.apache.servicemix:servicemix:pom:3.3-SNAPSHOT)
[INFO] Attempting to resolve a version for plugin: org.apache.servicemix.tooling:jbi-maven-plugin using meta-version: LATEST
---------------------------------------------------
constituent[0]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/aspectjrt-1.5.3.jar
constituent[1]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/backport-util-concurrent-3.0.jar
constituent[2]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/commons-cli-1.0.jar
constituent[3]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/doxia-sink-api-1.0-alpha-9.jar
constituent[4]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/jsch-0.1.27.jar
constituent[5]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/jtidy-4aug2000r7-dev.jar
constituent[6]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/maven-artifact-3.0-20080208.175410-49.jar
constituent[7]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/maven-core-2.1-20080208.175921-35.jar
constituent[8]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/maven-embedder-2.1-SNAPSHOT-sources.jar
constituent[9]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/maven-embedder-2.1-SNAPSHOT.jar
constituent[10]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/maven-lifecycle-2.1-20080208.175921-36.jar
constituent[11]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/maven-model-2.1-20080208.175921-40.jar
constituent[12]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/maven-plugin-api-2.1-20080208.175921-35.jar
constituent[13]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/maven-profile-2.1-20080208.175921-37.jar
constituent[14]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/maven-project-2.1-20080208.175921-38.jar
constituent[15]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/maven-reporting-api-2.1-20080208.175921-19.jar
constituent[16]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/plexus-container-default-1.0-alpha-44.jar
constituent[17]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/plexus-interactivity-api-1.0-alpha-6.jar
constituent[18]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/plexus-utils-1.4.5.jar
constituent[19]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/retrotranslator-runtime-1.2.1.jar
constituent[20]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/wagon-file-1.0-beta-2.jar
constituent[21]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/wagon-http-lightweight-1.0-beta-2.jar
constituent[22]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/wagon-http-shared-1.0-beta-2.jar
constituent[23]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/wagon-provider-api-1.0-beta-2.jar
constituent[24]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/wagon-ssh-1.0-beta-2.jar
constituent[25]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/wagon-ssh-common-1.0-beta-2.jar
constituent[26]: file:/d:/apps/apache-maven-2.1-SNAPSHOT/lib/wagon-ssh-external-1.0-beta-2.jar
---------------------------------------------------
Exception in thread "main" java.lang.StackOverflowError
at java.lang.Character.toUpperCase(Character.java:4278)
at java.lang.String.regionMatches(String.java:1384)
at java.lang.String.equalsIgnoreCase(String.java:1120)
at sun.net.www.protocol.jar.Handler.parseURL(Handler.java:59)
at java.net.URL.<init>(URL.java:596)
at java.net.URL.<init>(URL.java:464)
at sun.misc.URLClassPath$JarLoader.checkResource(URLClassPath.java:671)
at sun.misc.URLClassPath$JarLoader.getResource(URLClassPath.java:756)
at sun.misc.URLClassPath$JarLoader.findResource(URLClassPath.java:732)
at sun.misc.URLClassPath.findResource(URLClassPath.java:145)
at java.net.URLClassLoader$2.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findResource(URLClassLoader.java:359)
at java.lang.ClassLoader.getResource(ClassLoader.java:977)
at org.codehaus.plexus.classworlds.realm.ClassRealm.getRealmResource(ClassRealm.java:179)
at org.codehaus.plexus.classworlds.strategy.DefaultStrategy.getResource(DefaultStrategy.java:94)
at org.codehaus.plexus.classworlds.strategy.ForeignStrategy.getResource(ForeignStrategy.java:53)
at org.codehaus.plexus.classworlds.realm.ClassRealm.getResource(ClassRealm.java:206)
at java.lang.Class.getResource(Class.java:2074)
at org.apache.maven.project.DefaultMavenProjectBuilder.getSuperModel(DefaultMavenProjectBuilder.java:1395)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildInternal(DefaultMavenProjectBuilder.java:630)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody2(DefaultMavenProjectBuilder.java:210)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody3$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody0(DefaultMavenProjectBuilder.java:199)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody1$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.mergeManagedDependencies(DefaultMavenProjectBuilder.java:1114)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildInternal(DefaultMavenProjectBuilder.java:745)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody2(DefaultMavenProjectBuilder.java:210)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody3$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody0(DefaultMavenProjectBuilder.java:199)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody1$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.mergeManagedDependencies(DefaultMavenProjectBuilder.java:1114)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildInternal(DefaultMavenProjectBuilder.java:745)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody2(DefaultMavenProjectBuilder.java:210)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody3$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody0(DefaultMavenProjectBuilder.java:199)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody1$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.mergeManagedDependencies(DefaultMavenProjectBuilder.java:1114)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildInternal(DefaultMavenProjectBuilder.java:745)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody2(DefaultMavenProjectBuilder.java:210)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody3$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody0(DefaultMavenProjectBuilder.java:199)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody1$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.mergeManagedDependencies(DefaultMavenProjectBuilder.java:1114)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildInternal(DefaultMavenProjectBuilder.java:745)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody2(DefaultMavenProjectBuilder.java:210)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody3$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody0(DefaultMavenProjectBuilder.java:199)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody1$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.mergeManagedDependencies(DefaultMavenProjectBuilder.java:1114)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildInternal(DefaultMavenProjectBuilder.java:745)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody2(DefaultMavenProjectBuilder.java:210)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody3$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody0(DefaultMavenProjectBuilder.java:199)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody1$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.mergeManagedDependencies(DefaultMavenProjectBuilder.java:1114)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildInternal(DefaultMavenProjectBuilder.java:745)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody2(DefaultMavenProjectBuilder.java:210)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody3$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody0(DefaultMavenProjectBuilder.java:199)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody1$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.mergeManagedDependencies(DefaultMavenProjectBuilder.java:1114)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildInternal(DefaultMavenProjectBuilder.java:745)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody2(DefaultMavenProjectBuilder.java:210)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody3$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody0(DefaultMavenProjectBuilder.java:199)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody1$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.mergeManagedDependencies(DefaultMavenProjectBuilder.java:1114)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildInternal(DefaultMavenProjectBuilder.java:745)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody2(DefaultMavenProjectBuilder.java:210)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody3$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody0(DefaultMavenProjectBuilder.java:199)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody1$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.mergeManagedDependencies(DefaultMavenProjectBuilder.java:1114)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildInternal(DefaultMavenProjectBuilder.java:745)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody2(DefaultMavenProjectBuilder.java:210)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody3$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody0(DefaultMavenProjectBuilder.java:199)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody1$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.mergeManagedDependencies(DefaultMavenProjectBuilder.java:1114)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildInternal(DefaultMavenProjectBuilder.java:745)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody2(DefaultMavenProjectBuilder.java:210)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody3$advice(DefaultMavenProjectBuilder.java:206)



 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
Brett Porter added a comment - 28/Feb/08 03:42 PM
I actually get this instead:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at java.lang.String.<init>(String.java:208)
at org.codehaus.plexus.util.xml.pull.MXParser.getText(MXParser.java:746)
at org.codehaus.plexus.util.xml.pull.MXParser.nextText(MXParser.java:1060)
at org.apache.maven.model.io.xpp3.MavenXpp3Reader.parseRepository(MavenXpp3Reader.java:3961)
at org.apache.maven.model.io.xpp3.MavenXpp3Reader.parseModel(MavenXpp3Reader.java:2436)
at org.apache.maven.model.io.xpp3.MavenXpp3Reader.read(MavenXpp3Reader.java:4614)
at org.apache.maven.project.DefaultMavenProjectBuilder.readModel(DefaultMavenProjectBuilder.java:1162)
at org.apache.maven.project.DefaultMavenProjectBuilder.findModelFromRepository(DefaultMavenProjectBuilder.java:492)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody2(DefaultMavenProjectBuilder.java:208)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody3$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody0(DefaultMavenProjectBuilder.java:199)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody1$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.mergeManagedDependencies(DefaultMavenProjectBuilder.java:1114)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildInternal(DefaultMavenProjectBuilder.java:745)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody2(DefaultMavenProjectBuilder.java:210)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody3$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody0(DefaultMavenProjectBuilder.java:199)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody1$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.mergeManagedDependencies(DefaultMavenProjectBuilder.java:1114)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildInternal(DefaultMavenProjectBuilder.java:745)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody2(DefaultMavenProjectBuilder.java:210)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody3$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody0(DefaultMavenProjectBuilder.java:199)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository_aroundBody1$advice(DefaultMavenProjectBuilder.java:206)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildFromRepository(DefaultMavenProjectBuilder.java:1)
at org.apache.maven.project.DefaultMavenProjectBuilder.mergeManagedDependencies(DefaultMavenProjectBuilder.java:1114)
at org.apache.maven.project.DefaultMavenProjectBuilder.buildInternal(DefaultMavenProjectBuilder.java:745)

When run with 2.0.9 I get this quickly:
Downloading: http://localhost:7777/archiva/repository/internal//org/apache/servicemix/tooling/jbi-maven-plugin/3.3-SNAPSHOT/jbi-maven-plugin-3.3-SNAPSHOT.pom
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Failed to resolve artifact.

GroupId: org.apache.servicemix.tooling
ArtifactId: jbi-maven-plugin
Version: 3.3-SNAPSHOT

Reason: Unable to download the artifact from any repository

org.apache.servicemix.tooling:jbi-maven-plugin:pom:3.3-SNAPSHOT

from the specified remote repositories:
servicemix-m2-repo (http://svn.apache.org/repos/asf/servicemix/m2-repo/),
codehaus (http://repository.codehaus.org),
apache-incubating (http://people.apache.org/repo/m2-incubating-repository),
apache-releases (http://people.apache.org/repo/m2-ibiblio-rsync-repository),
central (http://repo1.maven.org/maven2),
apache.snapshots (http://people.apache.org/repo/m2-snapshot-repository),
apache-snapshots (http://people.apache.org/repo/m2-snapshot-repository),
apache.incubating (http://people.apache.org/repo/m2-incubating-repository)

Since this is a regression I think we need it in alpha-1.


John Casey added a comment - 10/Mar/08 09:47 PM
The problem comes when one of the managed dependencies is of type 'pom' and inherits from the current pom. This creates a situation where mergeManagedDependencies(..) tries to resolve the descendant project instance, which during it's construction has to construct its ancestor project instances...a set that contains the current one.

And round and round we go.

I've isolated this locally, and will try to put together an integration test to express it simply. Hopefully then I can figure out how to solve it, since it would seem to demand that module projects already exist, while the call to build a module projects actually happens after DefaultMaven gets an instance of the parent back. So, it would seem that some sort of prescanning or post-processing would be in order, to connect the merged dependency maps after all projects are built.

Ralph (or anyone): Is there a reason why the mergeManagedDependencies(..) call happens before processProjectLogic(..)? Also, the buildWithDependencies(..) call will complicate this, since it's really in the wrong place (it's over-extending the reach of the MavenProjectBuilder's design by adding artifact resolution beyond the POM in question and its ancestry).


John Casey added a comment - 26/Mar/08 08:08 PM
MNG-3483 goes a long way to limiting the ugliness of this bug...it limits it to new builds only, where import scope is used.

Rodrigo Ruiz added a comment - 14/Apr/08 08:41 AM
A different test case

Rodrigo Ruiz added a comment - 14/Apr/08 08:47 AM
I have uploaded an additional test-case. This one does not use service-mix, but some libraries from a grid-service development framework called GRIA.

The test project compiles with no problem with Maven 2.0.8 and Maven 2.0.9, but it runs for ages with 2.1 snapshot, finally throwing a SOE or an OOM, depending on the JVM arguments used (-Xmx and -Xss).

Best regards,
Rodrigo


Jason van Zyl added a comment - 01/Oct/08 09:01 AM
I'm pretty sure this is fixed, but validate and close.

Shane Isbell added a comment - 01/Oct/08 09:27 PM
DefaultMavenProjectBuilder.mergeManagedDependencies has been replaced with the new project builder. I have verified that the test case pom builds with 3.0.

Benjamin Bentmann added a comment - 04/Nov/08 05:24 AM
This is marked fixed but the corresponding core IT is still disabled and fails for me with trunk. From the README John left, I can't tell whether these failures are expected, i.e. the tests need to be fixed, or whether these indicate unresolved bugs.

Benjamin Bentmann added a comment - 04/Nov/08 04:33 PM
Maven 3.x isn't going to support "import" scope, so it's "Won't fix" for this branch. Unclear is, whether we can do something about this in 2.x.

Ralph Goers added a comment - 04/Nov/08 06:45 PM
Rather than just say 3.x isn't going to support import scope it would be better to identify what the mechanism that achieves the same result is. Does that mechanism pass a corresponding IT?