Skip to content

StackOverflowError during project model building #11009

@slawekjaranowski

Description

@slawekjaranowski

Affected version

4.0.0-rc-3,4.0.0-rc-4, master

Bug description

For project structure:

pom.xml
parent/pom.xml

content in pom.xml

<parent>
    <groupId>g</groupId>
    <artifactId>a</groupId>
    <relativePath>parent</relativePath>
</parent>

and content in parent/pom.xml

<parent>
    <groupId>external-G</groupId>
    <artifactId>external-A</groupId>
    <version>version-of-external-parnet</version>
</parent>

We have a StackOverflowError during project model building.

[WARNING] [stderr] Exception in thread "pool-2-thread-1" java.lang.StackOverflowError
[WARNING] [stderr] 	at org.eclipse.aether.repository.RepositoryPolicy.hashCode(RepositoryPolicy.java:186)
[WARNING] [stderr] 	at org.eclipse.aether.repository.RemoteRepository.hash(RemoteRepository.java:270)
[WARNING] [stderr] 	at org.eclipse.aether.repository.RemoteRepository.hashCode(RemoteRepository.java:260)
[WARNING] [stderr] 	at org.apache.maven.impl.DefaultRemoteRepository.hashCode(DefaultRemoteRepository.java:68)
[WARNING] [stderr] 	at java.base/java.util.Objects.hashCode(Objects.java:103)
[WARNING] [stderr] 	at java.base/java.util.ImmutableCollections$AbstractImmutableList.hashCode(ImmutableCollections.java:324)
[WARNING] [stderr] 	at java.base/java.util.Arrays.hashCode(Arrays.java:4599)
[WARNING] [stderr] 	at java.base/java.util.Objects.hash(Objects.java:133)
[WARNING] [stderr] 	at org.apache.maven.api.services.ModelBuilderRequest$ModelBuilderRequestBuilder$DefaultModelBuilderRequest.hashCode(ModelBuilderRequest.java:425)
[WARNING] [stderr] 	at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1694)
[WARNING] [stderr] 	at org.apache.maven.impl.cache.DefaultRequestCache.doCache(DefaultRequestCache.java:57)
[WARNING] [stderr] 	at org.apache.maven.impl.cache.AbstractRequestCache.request(AbstractRequestCache.java:62)
[WARNING] [stderr] 	at org.apache.maven.impl.AbstractSession.request(AbstractSession.java:145)
[WARNING] [stderr] 	at org.apache.maven.impl.model.DefaultModelBuilder$ModelBuilderSessionState.cache(DefaultModelBuilder.java:1839)
[WARNING] [stderr] 	at org.apache.maven.impl.model.DefaultModelBuilder$ModelBuilderSessionState.readAsParentModel(DefaultModelBuilder.java:1540)
[WARNING] [stderr] 	at org.apache.maven.impl.model.DefaultModelBuilder$ModelBuilderSessionState.readParentLocally(DefaultModelBuilder.java:919)
[WARNING] [stderr] 	at org.apache.maven.impl.model.DefaultModelBuilder$ModelBuilderSessionState.resolveParent(DefaultModelBuilder.java:874)
[WARNING] [stderr] 	at org.apache.maven.impl.model.DefaultModelBuilder$ModelBuilderSessionState.readParent(DefaultModelBuilder.java:845)
[WARNING] [stderr] 	at org.apache.maven.impl.model.DefaultModelBuilder$ModelBuilderSessionState.doReadAsParentModel(DefaultModelBuilder.java:1577)
[WARNING] [stderr] 	at org.apache.maven.impl.model.DefaultModelBuilder$ModelBuilderSessionState.readAsParentModel(DefaultModelBuilder.java:1565)
[WARNING] [stderr] 	at org.apache.maven.impl.model.DefaultModelBuilder$ModelBuilderSessionState.readParentLocally(DefaultModelBuilder.java:919)
[WARNING] [stderr] 	at org.apache.maven.impl.model.DefaultModelBuilder$ModelBuilderSessionState.resolveParent(DefaultModelBuilder.java:874)
[WARNING] [stderr] 	at org.apache.maven.impl.model.DefaultModelBuilder$ModelBuilderSessionState.readParent(DefaultModelBuilder.java:845)
[WARNING] [stderr] 	at org.apache.maven.impl.model.DefaultModelBuilder$ModelBuilderSessionState.doReadAsParentModel(DefaultModelBuilder.java:1577)
[WARNING] [stderr] 	at org.apache.maven.impl.model.DefaultModelBuilder$ModelBuilderSessionState.readAsParentModel(DefaultModelBuilder.java:1565)
[WARNING] [stderr] 	at org.apache.maven.impl.model.DefaultModelBuilder$ModelBuilderSessionState.readParentLocally(DefaultModelBuilder.java:919)
[WARNING] [stderr] 	at org.apache.maven.impl.model.DefaultModelBuilder$ModelBuilderSessionState.resolveParent(DefaultModelBuilder.java:874)
[WARNING] [stderr] 	at org.apache.maven.impl.model.DefaultModelBuilder$ModelBuilderSessionState.readParent(DefaultModelBuilder.java:845)

changing parent/pom.xml by adding relativePath avoid issue

<parent>
    <groupId>external-G</groupId>
    <artifactId>external-A</groupId>
    <version>version-of-external-parnet</version>
    <relativePath/>
</parent>

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions