[ 
https://issues.apache.org/jira/browse/MNG-8250?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17880093#comment-17880093
 ] 

Christoph Läubrich commented on MNG-8250:
-----------------------------------------

The problem seem to be the return value of 
org.eclipse.tycho.build.pomless.ManifestModelParser.ManifestSource.getPath() 
... maven seem to use (and validate) it in some ways, e.g. 

* if I return the path I get above exception.
* If i return a directory inside it works
* if I return full path I get "The POM found does not belong to the given 
directory"
* if I return null (what is allowed) I get "Child subproject null of 
/home/christoph/git/laeubi/tycho/tycho-its/projects/reactor.makeBehaviour/pom.xml
 does not exist"

> [Maven4] ModelParser#parse is not called for custom model source
> ----------------------------------------------------------------
>
>                 Key: MNG-8250
>                 URL: https://issues.apache.org/jira/browse/MNG-8250
>             Project: Maven
>          Issue Type: Bug
>            Reporter: Christoph Läubrich
>            Priority: Major
>
> I have created an example to explore the new model reader here
> https://github.com/laeubi/tycho/commit/f0b053487e5ea7ed50232c225cc99b20884b3b9e
> my ModelReader is called for locate, but I can't see its Modelreader#parse it 
> called instead I get
> {code}Caused by: java.io.IOException: Ist ein Verzeichnis
>     at sun.nio.ch.FileDispatcherImpl.read0(Native Method)
>     at sun.nio.ch.FileDispatcherImpl.read(FileDispatcherImpl.java:48)
>     at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:330)
>     at sun.nio.ch.IOUtil.read(IOUtil.java:296)
>     at sun.nio.ch.IOUtil.read(IOUtil.java:273)
>     at sun.nio.ch.FileChannelImpl.read(FileChannelImpl.java:232)
>     at sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:65)
>     at sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:107)
>     at sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:101)
>     at 
> com.ctc.wstx.io.StreamBootstrapper.ensureLoaded(StreamBootstrapper.java:492)
>     at 
> com.ctc.wstx.io.StreamBootstrapper.resolveStreamEncoding(StreamBootstrapper.java:317)
>     at 
> com.ctc.wstx.io.StreamBootstrapper.bootstrapInput(StreamBootstrapper.java:169)
>     at 
> com.ctc.wstx.stax.WstxInputFactory.doCreateSR(WstxInputFactory.java:575)
>     at com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:628)
>     at com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:821)
>     at 
> com.ctc.wstx.stax.WstxInputFactory.createXMLStreamReader(WstxInputFactory.java:360)
>     at 
> org.apache.maven.model.v4.MavenStaxReader.read(MavenStaxReader.java:430)
>     at 
> org.apache.maven.internal.impl.DefaultModelXmlFactory.read(DefaultModelXmlFactory.java:69)
>     at 
> org.apache.maven.internal.impl.DefaultModelXmlFactory.read(DefaultModelXmlFactory.java:47)
>     at 
> org.apache.maven.internal.impl.model.DefaultModelProcessor.doRead(DefaultModelProcessor.java:140)
>     at 
> org.apache.maven.internal.impl.model.DefaultModelProcessor.read(DefaultModelProcessor.java:115)
>     at 
> org.apache.maven.internal.impl.model.DefaultModelBuilder.doReadFileModel(DefaultModelBuilder.java:671)
>     at 
> org.apache.maven.internal.impl.model.DefaultModelBuilder.lambda$readFileModel$2(DefaultModelBuilder.java:644)
>     at 
> org.apache.maven.internal.impl.model.DefaultModelBuilder.lambda$asSupplier$10(DefaultModelBuilder.java:1460)
>     at 
> org.apache.maven.internal.impl.resolver.DefaultModelCache$CachingSupplier.get(DefaultModelCache.java:194)
>     at 
> org.apache.maven.internal.impl.resolver.DefaultModelCache.computeIfAbsent(DefaultModelCache.java:81)
>     at 
> org.apache.maven.internal.impl.resolver.DefaultModelCache.computeIfAbsent(DefaultModelCache.java:77)
>     at 
> org.apache.maven.internal.impl.model.DefaultModelBuilder.cache(DefaultModelBuilder.java:1453)
>     at 
> org.apache.maven.internal.impl.model.DefaultModelBuilder.readFileModel(DefaultModelBuilder.java:644)
>     at 
> org.apache.maven.internal.impl.model.DefaultModelBuilder.build(DefaultModelBuilder.java:229)
>     at 
> org.apache.maven.internal.impl.model.DefaultModelBuilder.build(DefaultModelBuilder.java:200)
>     at 
> org.apache.maven.project.DefaultProjectBuilder$BuildSession.build(DefaultProjectBuilder.java:612)
>     at 
> org.apache.maven.project.DefaultProjectBuilder$BuildSession.lambda$build$4(DefaultProjectBuilder.java:565)
>     at java.util.concurrent.FutureTask.run(FutureTask.java:264)
>     at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
>     at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
>     at java.lang.Thread.run(Thread.java:833)
> {code}
> It looks like maven try to parse it by the standard XML reader.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to