Hi Armin,
Please report at https://issues.apache.org/jira/projects/MCOMPILER/summary.
Looks like QDox may have issues with text blocks in general 
(https://github.com/paul-hammant/qdox/issues/215).

Konrad

> On 15. Aug 2024, at 13:03, Armin Schrenk <armin.schr...@skymatic.de.INVALID> 
> wrote:
> 
> Hello everybody,
> 
> hope this is the right place to report a possible bug in the Maven Compiler 
> plugin. I encountered an issue with the maven compiler plugin.
> 
> The problem seems to be a combination of 
> * a class using unescaped double quotes in Java TextBlocks and 
> * the same class being registered as a service provider using the module-info
> 
> Repo of a minimal example: https://github.com/infeo/mvnCompilerTextblockIssue
> 
> Further info:
> * JDK 22.0.2+9 zulu
> * maven-compiler 3.13.0
> * maven 3.9.7
> 
> Seems like the qdox parser stumbles over the quotes, stacktrace is:
> ```
> Caused by: org.apache.maven.plugin.PluginExecutionException: Execution 
> default-compile of goal 
> org.apache.maven.plugins:maven-compiler-plugin:3.11.0:compile failed: syntax 
> error @[9,2] in 
> file:/C:/Users/Arbeit/Skymatic/mvnCompilerError/src/main/java/org/example/ServiceImpl.java
>  <>
>     at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo 
> (DefaultBuildPluginManager.java:133)
>     at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 
> (MojoExecutor.java:328)
>     at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute 
> (MojoExecutor.java:316)
>     at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> (MojoExecutor.java:212)
>     at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> (MojoExecutor.java:174)
>     at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 
> (MojoExecutor.java:75)
>     at org.apache.maven.lifecycle.internal.MojoExecutor$1.run 
> (MojoExecutor.java:162)
>     at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute 
> (DefaultMojosExecutionStrategy.java:39)
>     at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> (MojoExecutor.java:159)
>     at 
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject 
> (LifecycleModuleBuilder.java:105)
>     at 
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject 
> (LifecycleModuleBuilder.java:73)
>     at 
> org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build
>  (SingleThreadedBuilder.java:53)
>     at org.apache.maven.lifecycle.internal.LifecycleStarter.execute 
> (LifecycleStarter.java:118)
>     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
>     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
>     at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
>     at org.apache.maven.cli.MavenCli.execute (MavenCli.java:906)
>     at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:283)
>     at org.apache.maven.cli.MavenCli.main (MavenCli.java:206)
>     at jdk.internal.reflect.DirectMethodHandleAccessor.invoke 
> (DirectMethodHandleAccessor.java:103)
>     at java.lang.reflect.Method.invoke (Method.java:580)
>     at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced 
> (Launcher.java:283)
>     at org.codehaus.plexus.classworlds.launcher.Launcher.launch 
> (Launcher.java:226)
>     at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode 
> (Launcher.java:407)
>     at org.codehaus.plexus.classworlds.launcher.Launcher.main 
> (Launcher.java:348)
>     at org.codehaus.classworlds.Launcher.main (Launcher.java:47)
> Caused by: com.thoughtworks.qdox.parser.ParseException: syntax error @[9,2] 
> in 
> file:/C:/Users/Arbeit/Skymatic/mvnCompilerError/src/main/java/org/example/ServiceImpl.java
>  <>
>     at com.thoughtworks.qdox.parser.impl.Parser.yyerror (Parser.java:1963)
>     at com.thoughtworks.qdox.parser.impl.Parser.yyparse (Parser.java:2085)
>     at com.thoughtworks.qdox.parser.impl.Parser.parse (Parser.java:1944)
>     at com.thoughtworks.qdox.library.SourceLibrary.parse 
> (SourceLibrary.java:232)
>     at com.thoughtworks.qdox.library.SourceLibrary.parse 
> (SourceLibrary.java:190)
>     at 
> com.thoughtworks.qdox.library.SourceFolderLibrary.getClassFromSourceFile 
> (SourceFolderLibrary.java:159)
>     at com.thoughtworks.qdox.library.SourceFolderLibrary.resolveJavaClass 
> (SourceFolderLibrary.java:112)
>     at com.thoughtworks.qdox.library.AbstractClassLibrary.getJavaClass 
> (AbstractClassLibrary.java:101)
>     at com.thoughtworks.qdox.library.AbstractClassLibrary.getJavaClass 
> (AbstractClassLibrary.java:94)
>     at com.thoughtworks.qdox.type.TypeResolver.getJavaClass 
> (TypeResolver.java:87)
>     at com.thoughtworks.qdox.model.impl.DefaultJavaType.resolveRealClass 
> (DefaultJavaType.java:282)
>     at com.thoughtworks.qdox.model.impl.DefaultJavaType.getName 
> (DefaultJavaType.java:837)
>     at 
> org.codehaus.plexus.languages.java.jpms.SourceModuleInfoParser.fromSourcePath 
> (SourceModuleInfoParser.java:105)
>     at 
> org.codehaus.plexus.languages.java.jpms.LocationManager.getMainModuleDescriptor
>  (LocationManager.java:334)
>     at org.codehaus.plexus.languages.java.jpms.LocationManager.resolvePaths 
> (LocationManager.java:155)
>     at org.apache.maven.plugin.compiler.CompilerMojo.preparePaths 
> (CompilerMojo.java:247)
>     at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute 
> (AbstractCompilerMojo.java:854)
>     at org.apache.maven.plugin.compiler.CompilerMojo.execute 
> (CompilerMojo.java:193)
>     at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo 
> (DefaultBuildPluginManager.java:126)
>     at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 
> (MojoExecutor.java:328)
>     at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute 
> (MojoExecutor.java:316)
>     at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> (MojoExecutor.java:212)
>     at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> (MojoExecutor.java:174)
>     at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 
> (MojoExecutor.java:75)
>     at org.apache.maven.lifecycle.internal.MojoExecutor$1.run 
> (MojoExecutor.java:162)
>     at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute 
> (DefaultMojosExecutionStrategy.java:39)
>     at org.apache.maven.lifecycle.internal.MojoExecutor.execute 
> (MojoExecutor.java:159)
>     at 
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject 
> (LifecycleModuleBuilder.java:105)
>     at 
> org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject 
> (LifecycleModuleBuilder.java:73)
>     at 
> org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build
>  (SingleThreadedBuilder.java:53)
>     at org.apache.maven.lifecycle.internal.LifecycleStarter.execute 
> (LifecycleStarter.java:118)
>     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
>     at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
>     at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
>     at org.apache.maven.cli.MavenCli.execute (MavenCli.java:906)
>     at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:283)
>     at org.apache.maven.cli.MavenCli.main (MavenCli.java:206)
>     at jdk.internal.reflect.DirectMethodHandleAccessor.invoke 
> (DirectMethodHandleAccessor.java:103)
>     at java.lang.reflect.Method.invoke (Method.java:580)
>     at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced 
> (Launcher.java:283)
>     at org.codehaus.plexus.classworlds.launcher.Launcher.launch 
> (Launcher.java:226)
>     at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode 
> (Launcher.java:407)
>     at org.codehaus.plexus.classworlds.launcher.Launcher.main 
> (Launcher.java:348)
>     at org.codehaus.classworlds.Launcher.main (Launcher.java:47)
> ```
> 
> 
> If you have any further questions, feel free to ask.
> 
> Best regards,
> 
> Armin Schrenk
> 
> -- 
> Armin Schrenk
> 
> Skymatic GmbH, Am Hauptbahnhof 6, 53111 Bonn
> Sitz der Gesellschaft: Bonn; Amtsgericht Bonn, HRB 22635

Reply via email to