You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Larry West (Jira)" <ji...@apache.org> on 2023/03/03 02:45:00 UTC

[jira] [Comment Edited] (MNG-7697) Cannot parse POM that contains an emoji in a comment

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

Larry West edited comment on MNG-7697 at 3/3/23 2:44 AM:
---------------------------------------------------------

_Update: I missed Michael Osipov's "Confirmed" comment until after submitting._

Here's another example with {{f0 9f a4 94}} (U+1F914: "thinking face") in the comment: [^pom.xml].
{code:xml}
<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
<!-- 🤔 -->
    <groupId>G</groupId>
    <artifactId>A</artifactId>
    <version>1</version>
</project>
{code}
I can't find an XML tool that says this is *not* well-formed. Nor {{xmllint}} on MacOS.
h3. Maven 3.9.0

As noted in the description, Maven 3.9.0 incorrectly complains about the UTF-8 character:
{noformat}
$ mvn390 -version
Apache Maven 3.9.0 (9b58d2bad23a66be161c4664ef21ce219c2c8584)
â‹®
$ mvn390 dependency:tree
[INFO] Scanning for projects...
[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[FATAL] Non-parseable POM /Users/lwest/test/MNG-7696/pom.xml: Illegal character 0xd83e found in comment (position: END_TAG seen ...</modelVersion>\n<!-- \ud83e... @6:7)  @ line 6, column 7
 @ 
[ERROR] The build could not read 1 project -> [Help 1]
[ERROR]   
[ERROR]   The project  (/Users/lwest/test/MNG-7696/pom.xml) has 1 error
[ERROR]     Non-parseable POM /Users/lwest/test/MNG-7696/pom.xml: Illegal character 0xd83e found in comment (position: END_TAG seen ...</modelVersion>\n<!-- \ud83e... @6:7)  @ line 6, column 7 -> [Help 2]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[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
{noformat}
h3. Maven 3.8.7

Maven 3.8.7 of course had no issue:
{noformat}
$ mvn -version
Apache Maven 3.8.7 (b89d5959fcde851dcb1c8946a785a163f14e1e29)
â‹®
$ mvn dependency:tree
[INFO] Scanning for projects...
[INFO] 
[INFO] --------------------------------< G:A >---------------------------------
[INFO] Building A 1
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ A ---
[INFO] G:A:jar:1
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  0.491 s
[INFO] Finished at: 2023-03-02T18:24:27-08:00
[INFO] ------------------------------------------------------------------------
{noformat}


was (Author: larry_west):
Here's another example with {{f0 9f a4 94}} (U+1F914: "thinking face") in the comment: [^pom.xml].
{code:xml}
<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
<!-- 🤔 -->
    <groupId>G</groupId>
    <artifactId>A</artifactId>
    <version>1</version>
</project>
{code}
I can't find an XML tool that says this is *not* well-formed. Nor {{xmllint}} on MacOS.
h3. Maven 3.9.0

As noted in the description, Maven 3.9.0 incorrectly complains about the UTF-8 character:
{noformat}
$ mvn390 -version
Apache Maven 3.9.0 (9b58d2bad23a66be161c4664ef21ce219c2c8584)
â‹®
$ mvn390 dependency:tree
[INFO] Scanning for projects...
[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[FATAL] Non-parseable POM /Users/lwest/test/MNG-7696/pom.xml: Illegal character 0xd83e found in comment (position: END_TAG seen ...</modelVersion>\n<!-- \ud83e... @6:7)  @ line 6, column 7
 @ 
[ERROR] The build could not read 1 project -> [Help 1]
[ERROR]   
[ERROR]   The project  (/Users/lwest/test/MNG-7696/pom.xml) has 1 error
[ERROR]     Non-parseable POM /Users/lwest/test/MNG-7696/pom.xml: Illegal character 0xd83e found in comment (position: END_TAG seen ...</modelVersion>\n<!-- \ud83e... @6:7)  @ line 6, column 7 -> [Help 2]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[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
{noformat}
h3. Maven 3.8.7

Maven 3.8.7 of course had no issue:
{noformat}
$ mvn -version
Apache Maven 3.8.7 (b89d5959fcde851dcb1c8946a785a163f14e1e29)
â‹®
$ mvn dependency:tree
[INFO] Scanning for projects...
[INFO] 
[INFO] --------------------------------< G:A >---------------------------------
[INFO] Building A 1
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ A ---
[INFO] G:A:jar:1
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  0.491 s
[INFO] Finished at: 2023-03-02T18:24:27-08:00
[INFO] ------------------------------------------------------------------------
{noformat}

> Cannot parse POM that contains an emoji in a comment
> ----------------------------------------------------
>
>                 Key: MNG-7697
>                 URL: https://issues.apache.org/jira/browse/MNG-7697
>             Project: Maven
>          Issue Type: Bug
>          Components: POM
>    Affects Versions: 3.9.0
>         Environment: MacOS 13.2.1
> OpenJDK Runtime Environment Temurin-17.0.4+8 
>            Reporter: Andrew Rosenberg
>            Assignee: Tamas Cservenak
>            Priority: Major
>             Fix For: 3.9.1
>
>         Attachments: pom-1.xml, pom.xml
>
>
> {noformat}
>  mvn -e  clean install                            
> [INFO] Error stacktraces are turned on.
> [INFO] Scanning for projects...
> [ERROR] [ERROR] Some problems were encountered while processing the POMs:
> [FATAL] Non-parseable POM /Users/andrew.rosenberg/.m2/repository/com/verygood/security/base-pom-17/0.2.47/base-pom-17-0.2.47.pom: Illegal character 0xd83d found in comment (position: START_TAG seen ...<dependencies>\n      <!--ALL TEH BOMS!  \ud83d... @235:27)  @ /Users/andrew.rosenberg/.m2/repository/com/verygood/security/base-pom-17/0.2.47/base-pom-17-0.2.47.pom, line 235, column 27
>  @ 
> [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 /Users/andrew.rosenberg/.m2/repository/com/verygood/security/base-pom-17/0.2.47/base-pom-17-0.2.47.pom: Illegal character 0xd83d found in comment (position: START_TAG seen ...<dependencies>\n      <!--ALL TEH BOMS!  \ud83d... @235:27)  @ /Users/andrew.rosenberg/.m2/repository/com/verygood/security/base-pom-17/0.2.47/base-pom-17-0.2.47.pom, line 235, column 27
>     at org.apache.maven.project.DefaultProjectBuilder.build (DefaultProjectBuilder.java:388)
>     at org.apache.maven.graph.DefaultGraphBuilder.collectProjects (DefaultGraphBuilder.java:349)
>     at org.apache.maven.graph.DefaultGraphBuilder.getProjectsForMavenReactor (DefaultGraphBuilder.java:340)
>     at org.apache.maven.graph.DefaultGraphBuilder.build (DefaultGraphBuilder.java:76)
>     at org.apache.maven.DefaultMaven.buildGraph (DefaultMaven.java:453)
>     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:196)
>     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:172)
>     at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:100)
>     at org.apache.maven.cli.MavenCli.execute (MavenCli.java:821)
>     at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:270)
>     at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)
>     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
>     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
>     at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
>     at java.lang.reflect.Method.invoke (Method.java:568)
>     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 com.verygood.security.atlas.horizon:atlas-horizon:1.0.0-SNAPSHOT (/Users/andrew.rosenberg/vgs/atlas-horizon/pom.xml) has 1 error
> [ERROR]     Non-parseable POM /Users/andrew.rosenberg/.m2/repository/com/verygood/security/base-pom-17/0.2.47/base-pom-17-0.2.47.pom: Illegal character 0xd83d found in comment (position: START_TAG seen ...<dependencies>\n      <!--ALL TEH BOMS!  \ud83d... @235:27)  @ /Users/andrew.rosenberg/.m2/repository/com/verygood/security/base-pom-17/0.2.47/base-pom-17-0.2.47.pom, line 235, column 27 -> [Help 2]
> org.apache.maven.model.io.ModelParseException: Illegal character 0xd83d found in comment (position: START_TAG seen ...<dependencies>\n      <!--ALL TEH BOMS!  \ud83d... @235:27) 
>     at org.apache.maven.model.io.DefaultModelReader.read (DefaultModelReader.java:96)
>     at org.apache.maven.model.io.DefaultModelReader.read (DefaultModelReader.java:74)
>     at org.apache.maven.model.building.DefaultModelProcessor.read (DefaultModelProcessor.java:99)
>     at org.apache.maven.model.building.DefaultModelBuilder.readModel (DefaultModelBuilder.java:552)
>     at org.apache.maven.model.building.DefaultModelBuilder.build (DefaultModelBuilder.java:257)
>     at org.apache.maven.model.building.DefaultModelBuilder.importDependencyManagement (DefaultModelBuilder.java:1208)
>     at org.apache.maven.model.building.DefaultModelBuilder.build (DefaultModelBuilder.java:486)
>     at org.apache.maven.model.building.DefaultModelBuilder.build (DefaultModelBuilder.java:455)
>     at org.apache.maven.project.DefaultProjectBuilder.build (DefaultProjectBuilder.java:611)
>     at org.apache.maven.project.DefaultProjectBuilder.build (DefaultProjectBuilder.java:374)
>     at org.apache.maven.graph.DefaultGraphBuilder.collectProjects (DefaultGraphBuilder.java:349)
>     at org.apache.maven.graph.DefaultGraphBuilder.getProjectsForMavenReactor (DefaultGraphBuilder.java:340)
>     at org.apache.maven.graph.DefaultGraphBuilder.build (DefaultGraphBuilder.java:76)
>     at org.apache.maven.DefaultMaven.buildGraph (DefaultMaven.java:453)
>     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:196)
>     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:172)
>     at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:100)
>     at org.apache.maven.cli.MavenCli.execute (MavenCli.java:821)
>     at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:270)
>     at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)
>     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
>     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
>     at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
>     at java.lang.reflect.Method.invoke (Method.java:568)
>     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: Illegal character 0xd83d found in comment (position: START_TAG seen ...<dependencies>\n      <!--ALL TEH BOMS!  \ud83d... @235:27) 
>     at org.codehaus.plexus.util.xml.pull.MXParser.parseComment (MXParser.java:3033)
>     at org.codehaus.plexus.util.xml.pull.MXParser.nextImpl (MXParser.java:1477)
>     at org.codehaus.plexus.util.xml.pull.MXParser.next (MXParser.java:1375)
>     at org.codehaus.plexus.util.xml.pull.MXParser.nextTag (MXParser.java:1357)
>     at org.apache.maven.model.io.xpp3.MavenXpp3ReaderEx.parseDependencyManagement (MavenXpp3ReaderEx.java:1590)
>     at org.apache.maven.model.io.xpp3.MavenXpp3ReaderEx.parseModel (MavenXpp3ReaderEx.java:2543)
>     at org.apache.maven.model.io.xpp3.MavenXpp3ReaderEx.read (MavenXpp3ReaderEx.java:4487)
>     at org.apache.maven.model.io.xpp3.MavenXpp3ReaderEx.read (MavenXpp3ReaderEx.java:615)
>     at org.apache.maven.model.io.DefaultModelReader.read (DefaultModelReader.java:91)
>     at org.apache.maven.model.io.DefaultModelReader.read (DefaultModelReader.java:74)
>     at org.apache.maven.model.building.DefaultModelProcessor.read (DefaultModelProcessor.java:99)
>     at org.apache.maven.model.building.DefaultModelBuilder.readModel (DefaultModelBuilder.java:552)
>     at org.apache.maven.model.building.DefaultModelBuilder.build (DefaultModelBuilder.java:257)
>     at org.apache.maven.model.building.DefaultModelBuilder.importDependencyManagement (DefaultModelBuilder.java:1208)
>     at org.apache.maven.model.building.DefaultModelBuilder.build (DefaultModelBuilder.java:486)
>     at org.apache.maven.model.building.DefaultModelBuilder.build (DefaultModelBuilder.java:455)
>     at org.apache.maven.project.DefaultProjectBuilder.build (DefaultProjectBuilder.java:611)
>     at org.apache.maven.project.DefaultProjectBuilder.build (DefaultProjectBuilder.java:374)
>     at org.apache.maven.graph.DefaultGraphBuilder.collectProjects (DefaultGraphBuilder.java:349)
>     at org.apache.maven.graph.DefaultGraphBuilder.getProjectsForMavenReactor (DefaultGraphBuilder.java:340)
>     at org.apache.maven.graph.DefaultGraphBuilder.build (DefaultGraphBuilder.java:76)
>     at org.apache.maven.DefaultMaven.buildGraph (DefaultMaven.java:453)
>     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:196)
>     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:172)
>     at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:100)
>     at org.apache.maven.cli.MavenCli.execute (MavenCli.java:821)
>     at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:270)
>     at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)
>     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
>     at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
>     at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
>     at java.lang.reflect.Method.invoke (Method.java:568)
>     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]
> {noformat}



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