[
https://issues.apache.org/jira/browse/MNG-6707?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Michael Osipov updated MNG-6707:
--------------------------------
Fix Version/s: 3.6.2
> Maven XML parser does not accept '>' in XML processing instructions
> -------------------------------------------------------------------
>
> Key: MNG-6707
> URL: https://issues.apache.org/jira/browse/MNG-6707
> Project: Maven
> Issue Type: Bug
> Affects Versions: 3.6.1
> Reporter: Raphael Rösch
> Priority: Trivial
> Fix For: 3.6.2
>
>
> Maven 3.6 does not accept the char '>' in [XML processing instructions
> (PI)|https://www.w3.org/TR/REC-xml/#sec-pi], but '>' is a valid char in PIs.
> Previous versions of Maven (tested with 3.5) are not affected.
> Example:
> {code:xml}
> <project xmlns="http://maven.apache.org/POM/4.0.0"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
> http://maven.apache.org/maven-v4_0_0.xsd">
> <modelVersion>4.0.0</modelVersion>
> <groupId>org.apache.test</groupId>
> <artifactId>xmlbugtest</artifactId>
> <version>1.0.0-SNAPSHOT</version>
> <packaging>pom</packaging>
> <?foo bar > bar ?>
> </project>
> {code}
> Maven 3.6 fails to parse the given POM:
> {code:java}
> [INFO] Error stacktraces are turned on.
> [INFO] Scanning for projects...
> [ERROR] [ERROR] Some problems were encountered while processing the POMs:
> [FATAL] Non-parseable POM /home/rroesch/tests/mavenxmlbug/pom.xml: processing
> instruction started on line 7 and column 5 was not closed (position: END_TAG
> seen ...</packaging>\n <?foo bar >... @7:14) @ line 7, column 14
> @
> [ERROR] The build could not read 1 project -> [Help 1]
> org.apache.maven.project.ProjectBuildingException: Some problems were
> encountered while processing the POMs:
> [FATAL] Non-parseable POM /home/rroesch/tests/mavenxmlbug/pom.xml: processing
> instruction started on line 7 and column 5 was not closed (position: END_TAG
> seen ...</packaging>\n <?foo bar >... @7:14) @ line 7, column 14
> at org.apache.maven.project.DefaultProjectBuilder.build
> (DefaultProjectBuilder.java:395)
> at org.apache.maven.graph.DefaultGraphBuilder.collectProjects
> (DefaultGraphBuilder.java:414)
> at org.apache.maven.graph.DefaultGraphBuilder.getProjectsForMavenReactor
> (DefaultGraphBuilder.java:405)
> at org.apache.maven.graph.DefaultGraphBuilder.build
> (DefaultGraphBuilder.java:82)
> at org.apache.maven.DefaultMaven.buildGraph (DefaultMaven.java:507)
> at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:219)
> at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
> at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
> at org.apache.maven.cli.MavenCli.execute (MavenCli.java:956)
> at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288)
> at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)
> at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke
> (NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke
> (DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke (Method.java:498)
> at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced
> (Launcher.java:282)
> at org.codehaus.plexus.classworlds.launcher.Launcher.launch
> (Launcher.java:225)
> at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode
> (Launcher.java:406)
> at org.codehaus.plexus.classworlds.launcher.Launcher.main
> (Launcher.java:347)
> [ERROR]
> [ERROR] The project (/home/rroesch/tests/mavenxmlbug/pom.xml) has 1 error
> [ERROR] Non-parseable POM /home/rroesch/tests/mavenxmlbug/pom.xml:
> processing instruction started on line 7 and column 5 was not closed
> (position: END_TAG seen ...</packaging>\n <?foo bar >... @7:14) @ line 7,
> column 14 -> [Help 2]
> org.apache.maven.model.io.ModelParseException: processing instruction started
> on line 7 and column 5 was not closed (position: END_TAG seen
> ...</packaging>\n <?foo bar >... @7:14)
> at org.apache.maven.model.io.DefaultModelReader.read
> (DefaultModelReader.java:114)
> at org.apache.maven.model.io.DefaultModelReader.read
> (DefaultModelReader.java:82)
> at org.apache.maven.model.building.DefaultModelProcessor.read
> (DefaultModelProcessor.java:84)
> at org.apache.maven.model.building.DefaultModelBuilder.readModel
> (DefaultModelBuilder.java:544)
> at org.apache.maven.model.building.DefaultModelBuilder.build
> (DefaultModelBuilder.java:276)
> at org.apache.maven.project.DefaultProjectBuilder.build
> (DefaultProjectBuilder.java:446)
> at org.apache.maven.project.DefaultProjectBuilder.build
> (DefaultProjectBuilder.java:412)
> at org.apache.maven.project.DefaultProjectBuilder.build
> (DefaultProjectBuilder.java:375)
> at org.apache.maven.graph.DefaultGraphBuilder.collectProjects
> (DefaultGraphBuilder.java:414)
> at org.apache.maven.graph.DefaultGraphBuilder.getProjectsForMavenReactor
> (DefaultGraphBuilder.java:405)
> at org.apache.maven.graph.DefaultGraphBuilder.build
> (DefaultGraphBuilder.java:82)
> at org.apache.maven.DefaultMaven.buildGraph (DefaultMaven.java:507)
> at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:219)
> at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
> at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
> at org.apache.maven.cli.MavenCli.execute (MavenCli.java:956)
> at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288)
> at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)
> at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke
> (NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke
> (DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke (Method.java:498)
> at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced
> (Launcher.java:282)
> at org.codehaus.plexus.classworlds.launcher.Launcher.launch
> (Launcher.java:225)
> at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode
> (Launcher.java:406)
> at org.codehaus.plexus.classworlds.launcher.Launcher.main
> (Launcher.java:347)
> Caused by: org.codehaus.plexus.util.xml.pull.XmlPullParserException:
> processing instruction started on line 7 and column 5 was not closed
> (position: END_TAG seen ...</packaging>\n <?foo bar >... @7:14)
> at org.codehaus.plexus.util.xml.pull.MXParser.parsePI (MXParser.java:3057)
> at org.codehaus.plexus.util.xml.pull.MXParser.nextImpl
> (MXParser.java:1500)
> at org.codehaus.plexus.util.xml.pull.MXParser.next (MXParser.java:1319)
> at org.codehaus.plexus.util.xml.pull.MXParser.nextTag (MXParser.java:1302)
> at org.apache.maven.model.io.xpp3.MavenXpp3ReaderEx.parseModel
> (MavenXpp3ReaderEx.java:2319)
> at org.apache.maven.model.io.xpp3.MavenXpp3ReaderEx.read
> (MavenXpp3ReaderEx.java:4425)
> at org.apache.maven.model.io.xpp3.MavenXpp3ReaderEx.read
> (MavenXpp3ReaderEx.java:598)
> at org.apache.maven.model.io.DefaultModelReader.read
> (DefaultModelReader.java:105)
> at org.apache.maven.model.io.DefaultModelReader.read
> (DefaultModelReader.java:82)
> at org.apache.maven.model.building.DefaultModelProcessor.read
> (DefaultModelProcessor.java:84)
> at org.apache.maven.model.building.DefaultModelBuilder.readModel
> (DefaultModelBuilder.java:544)
> at org.apache.maven.model.building.DefaultModelBuilder.build
> (DefaultModelBuilder.java:276)
> at org.apache.maven.project.DefaultProjectBuilder.build
> (DefaultProjectBuilder.java:446)
> at org.apache.maven.project.DefaultProjectBuilder.build
> (DefaultProjectBuilder.java:412)
> at org.apache.maven.project.DefaultProjectBuilder.build
> (DefaultProjectBuilder.java:375)
> at org.apache.maven.graph.DefaultGraphBuilder.collectProjects
> (DefaultGraphBuilder.java:414)
> at org.apache.maven.graph.DefaultGraphBuilder.getProjectsForMavenReactor
> (DefaultGraphBuilder.java:405)
> at org.apache.maven.graph.DefaultGraphBuilder.build
> (DefaultGraphBuilder.java:82)
> at org.apache.maven.DefaultMaven.buildGraph (DefaultMaven.java:507)
> at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:219)
> at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
> at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
> at org.apache.maven.cli.MavenCli.execute (MavenCli.java:956)
> at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288)
> at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)
> at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke
> (NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke
> (DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke (Method.java:498)
> at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced
> (Launcher.java:282)
> at org.codehaus.plexus.classworlds.launcher.Launcher.launch
> (Launcher.java:225)
> at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode
> (Launcher.java:406)
> at org.codehaus.plexus.classworlds.launcher.Launcher.main
> (Launcher.java:347)
> [ERROR]
> [ERROR] Re-run Maven using the -X switch to enable full debug logging.
> [ERROR]
> [ERROR] For more information about the errors and possible solutions, please
> read the following articles:
> [ERROR] [Help 1]
> http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException
> [ERROR] [Help 2]
> http://cwiki.apache.org/confluence/display/MAVEN/ModelParseException
> {code}
>
> Even if PIs are not evaluated by Maven, they can be used as alternative to
> [XML comments|https://www.w3.org/TR/REC-xml/#NT-Comment]. Example:
> [parquet-1.9.0-cdh6.2.0.pom|https://repository.cloudera.com/artifactory/cloudera-repos/org/apache/parquet/parquet/1.9.0-cdh6.2.0/parquet-1.9.0-cdh6.2.0.pom]
> line 286 is not parsable by Maven 3.6.
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)