[ https://issues.apache.org/jira/browse/MNG-8288?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tamas Cservenak reassigned MNG-8288: ------------------------------------ Assignee: Tamas Cservenak > Path cannot be null while building reactor modules > -------------------------------------------------- > > Key: MNG-8288 > URL: https://issues.apache.org/jira/browse/MNG-8288 > Project: Maven > Issue Type: Bug > Components: Core > Reporter: Tamas Cservenak > Assignee: Tamas Cservenak > Priority: Major > Fix For: 4.0.0-beta-5 > > > Exception trace > {noformat} > org.apache.maven.InternalErrorException: Internal error: > java.lang.IllegalArgumentException: path cannot be null > at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:157) > at org.apache.maven.cling.invoker.mvn.DefaultMavenInvoker.doExecute > (DefaultMavenInvoker.java:449) > at org.apache.maven.cli.DaemonMavenInvoker.doExecute > (DaemonMavenInvoker.java:135) > at org.apache.maven.cli.DaemonMavenInvoker.doExecute > (DaemonMavenInvoker.java:39) > at org.apache.maven.cling.invoker.mvn.DefaultMavenInvoker.execute > (DefaultMavenInvoker.java:104) > at org.apache.maven.cling.invoker.mvn.DefaultMavenInvoker.execute > (DefaultMavenInvoker.java:72) > at org.apache.maven.cling.invoker.LookupInvoker.doInvoke > (LookupInvoker.java:202) > at org.apache.maven.cling.invoker.LookupInvoker.invoke > (LookupInvoker.java:177) > at org.apache.maven.cli.DaemonMavenCling.main (DaemonMavenCling.java:76) > at org.mvndaemon.mvnd.daemon.Server.handle (Server.java:616) > at org.mvndaemon.mvnd.daemon.Server.client (Server.java:292) > at org.mvndaemon.mvnd.daemon.Server.lambda$accept$2 (Server.java:254) > at java.lang.Thread.run (Thread.java:1583) > Caused by: java.lang.IllegalArgumentException: path cannot be null > at org.apache.maven.api.services.BaseRequest.nonNull (BaseRequest.java:50) > at org.apache.maven.api.services.ModelSource.fromPath > (ModelSource.java:57) > at org.apache.maven.api.services.ModelSource.fromPath > (ModelSource.java:52) > at > org.apache.maven.internal.impl.model.DefaultModelBuilder$DefaultModelBuilderSession.doReadFileModel > (DefaultModelBuilder.java:1331) > at > org.apache.maven.internal.impl.model.DefaultModelCache$CachingSupplier.get > (DefaultModelCache.java:178) > at org.apache.maven.internal.impl.model.DefaultModelCache.computeIfAbsent > (DefaultModelCache.java:65) > at org.apache.maven.internal.impl.model.DefaultModelCache.computeIfAbsent > (DefaultModelCache.java:56) > at > org.apache.maven.internal.impl.model.DefaultModelBuilder$DefaultModelBuilderSession.cache > (DefaultModelBuilder.java:1654) > at > org.apache.maven.internal.impl.model.DefaultModelBuilder$DefaultModelBuilderSession.readFileModel > (DefaultModelBuilder.java:1170) > at > org.apache.maven.internal.impl.model.DefaultModelBuilder$DefaultModelBuilderSession.loadFilePom > (DefaultModelBuilder.java:727) > at > org.apache.maven.internal.impl.model.DefaultModelBuilder$DefaultModelBuilderSession.loadFromRoot > (DefaultModelBuilder.java:705) > at > org.apache.maven.internal.impl.model.DefaultModelBuilder$DefaultModelBuilderSession.buildBuildPom > (DefaultModelBuilder.java:652) > at org.apache.maven.internal.impl.model.DefaultModelBuilder$1.build > (DefaultModelBuilder.java:227) > at org.apache.maven.project.DefaultProjectBuilder$BuildSession.build > (DefaultProjectBuilder.java:491) > at > org.apache.maven.project.DefaultProjectBuilder$BuildSession.lambda$doBuild$5 > (DefaultProjectBuilder.java:468) > at java.util.stream.ReferencePipeline$3$1.accept > (ReferencePipeline.java:197) > at java.util.Collections$2.tryAdvance (Collections.java:5073) > at java.util.Collections$2.forEachRemaining (Collections.java:5081) > at java.util.stream.AbstractPipeline.copyInto (AbstractPipeline.java:509) > at java.util.stream.AbstractPipeline.wrapAndCopyInto > (AbstractPipeline.java:499) > at java.util.stream.ReduceOps$ReduceOp.evaluateSequential > (ReduceOps.java:921) > at java.util.stream.AbstractPipeline.evaluate (AbstractPipeline.java:234) > at java.util.stream.ReferencePipeline.collect (ReferencePipeline.java:682) > at org.apache.maven.project.DefaultProjectBuilder$BuildSession.doBuild > (DefaultProjectBuilder.java:470) > at org.apache.maven.project.DefaultProjectBuilder$BuildSession.build > (DefaultProjectBuilder.java:444) > at org.apache.maven.project.DefaultProjectBuilder.build > (DefaultProjectBuilder.java:183) > at > org.apache.maven.project.collector.DefaultProjectsSelector.selectProjects > (DefaultProjectsSelector.java:61) > at > org.apache.maven.project.collector.RequestPomCollectionStrategy.collectProjects > (RequestPomCollectionStrategy.java:49) > at org.apache.maven.graph.DefaultGraphBuilder.getProjectsForMavenReactor > (DefaultGraphBuilder.java:364) > at org.apache.maven.graph.DefaultGraphBuilder.build > (DefaultGraphBuilder.java:100) > at org.apache.maven.DefaultMaven.buildGraph (DefaultMaven.java:629) > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:250) > at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:225) > at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:149) > at org.apache.maven.cling.invoker.mvn.DefaultMavenInvoker.doExecute > (DefaultMavenInvoker.java:449) > at org.apache.maven.cli.DaemonMavenInvoker.doExecute > (DaemonMavenInvoker.java:135) > at org.apache.maven.cli.DaemonMavenInvoker.doExecute > (DaemonMavenInvoker.java:39) > at org.apache.maven.cling.invoker.mvn.DefaultMavenInvoker.execute > (DefaultMavenInvoker.java:104) > at org.apache.maven.cling.invoker.mvn.DefaultMavenInvoker.execute > (DefaultMavenInvoker.java:72) > at org.apache.maven.cling.invoker.LookupInvoker.doInvoke > (LookupInvoker.java:202) > at org.apache.maven.cling.invoker.LookupInvoker.invoke > (LookupInvoker.java:177) > at org.apache.maven.cli.DaemonMavenCling.main (DaemonMavenCling.java:76) > at org.mvndaemon.mvnd.daemon.Server.handle (Server.java:616) > at org.mvndaemon.mvnd.daemon.Server.client (Server.java:292) > at org.mvndaemon.mvnd.daemon.Server.lambda$accept$2 (Server.java:254) > at java.lang.Thread.run (Thread.java:1583) > {noformat} > Reason: is usually project formatted like this: > {noformat} > worx > .mvn > prj1 > pom.xml > prj2 > pom.xml > {noformat} > At level of {{.mvn}} there is no POM. > IMHO this is valid layout. Maven should not expect that there is pom.xml > where .mvn directory is. Is like is mixing rootDirectory and topDirectory? > Also, as we discussed, Maven _could come up_ with generated on the fly POMs > for such directories, to be able to build the complete tree structure: these > POMs are not parents (otherwise they would be referenced from prj1 or prj2 > and they missing would mean project is broken). They are really "just > aggregator" POMs, but subprojects can today be inferred, it means they need > GA only, V=1 and packaging=pom. > This means maven could generate these in memory with random G and > V=relativized path from rootDirectory parent? -- This message was sent by Atlassian Jira (v8.20.10#820010)