Skip to content

Qulice Exception on Javadoc Tags Addition in File EoExternalAnnotator #1318

@xzescha

Description

@xzescha

While running Qulice on project eo-intellij-plugin, I encountered an error during execution. Qulice unexpextedly throws an exception.

Exception:
Failed to execute goal com.qulice:qulice-maven-plugin:0.23.0:check (default-cli) on project org.eolang.jetbrains: Execution default-cli of goal com.qulice:qulice-maven-plugin:0.23.0:check failed: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Failed to process files: Exception was thrown while processing E:\Docs\eo-intellij-plugin\src\main\java\org\eolang\jetbrains\EoExternalAnnotator.java: java.lang.StringIndexOutOfBoundsException: begin 6, end 4, length 6 -> [Help 1]

I've localized this error, and found out, that while I'm adding any tags to my first usage of Javadoc in file, Qulice is throwing this exception, no matter what the tag is.

My configuration:
OS: Win 11
Architecture: amd64
IntelliJ IDEA version: 2023.3

How to reproduce an error:

  1. Copy source code of my fork of repository "eo-intellij-plugin" by this link.
  2. run build.gradle in IntelliJ Idea.
  3. You've successfully reproduced an error!

Here's the full log for Qulice task:

> Task :qulice
Caching disabled for task ':qulice' because:
  Build cache is disabled
Task ':qulice' is not up-to-date because:
  Task has not declared any outputs despite executing actions.
Starting process 'command 'mvn.cmd''. Working directory: E:\All_XL\Docs\eo-intellij-plugin Command: mvn.cmd com.qulice:qulice-maven-plugin:check -e
Successfully started process 'command 'mvn.cmd''
[INFO] Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO] 
[INFO] ------------------< org.eolang:org.eolang.jetbrains >-------------------
[INFO] Building eo-intellij-plugin 0.0.0
[INFO]   from pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- qulice:0.23.0:check (default-cli) @ org.eolang.jetbrains ---
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  1.860 s
[INFO] Finished at: 2025-02-03T16:43:24+03:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.qulice:qulice-maven-plugin:0.23.0:check (default-cli) on project org.eolang.jetbrains: Execution default-cli of goal com.qulice:qulice-maven-plugin:0.23.0:check failed: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Failed to process files: Exception was thrown while processing E:\All_XL\Docs\eo-intellij-plugin\src\main\java\org\eolang\jetbrains\EoExternalAnnotator.java: java.lang.StringIndexOutOfBoundsException: begin 6, end 4, length 6 -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal com.qulice:qulice-maven-plugin:0.23.0:check (default-cli) on project org.eolang.jetbrains: Execution default-cli of goal com.qulice:qulice-maven-plugin:0.23.0:check failed: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Failed to process files
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:333)
    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.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:255)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:201)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:361)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:314)
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default-cli of goal com.qulice:qulice-maven-plugin:0.23.0:check failed: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Failed to process files
    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)
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default-cli of goal com.qulice:qulice-maven-plugin:0.23.0:check failed: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Failed to process files

    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.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:255)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:201)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:361)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:314)
Caused by: java.lang.IllegalStateException: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Failed to process files
    at com.qulice.maven.CheckMojo.run (CheckMojo.java:117)
    at com.qulice.maven.CheckMojo.doExecute (CheckMojo.java:79)
    at com.qulice.maven.AbstractQuliceMojo.execute (AbstractQuliceMojo.java:188)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:126)
Caused by: java.lang.IllegalStateException: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Failed to process files

    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.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:255)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:201)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:361)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:314)
Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Failed to process files
    at java.util.concurrent.FutureTask.report (FutureTask.java:122)
Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalStateException: Failed to process files

    at java.util.concurrent.FutureTask.get (FutureTask.java:205)
    at com.qulice.maven.CheckMojo.run (CheckMojo.java:112)
    at com.qulice.maven.CheckMojo.doExecute (CheckMojo.java:79)
    at com.qulice.maven.AbstractQuliceMojo.execute (AbstractQuliceMojo.java:188)
    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.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:255)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:201)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:361)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:314)
Caused by: java.lang.IllegalStateException: Failed to process files
    at com.qulice.checkstyle.CheckstyleValidator.validate (CheckstyleValidator.java:108)
    at com.qulice.maven.CheckMojo$ValidatorCallable.call (CheckMojo.java:236)
    at com.qulice.maven.CheckMojo$ValidatorCallable.call (CheckMojo.java:204)
    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:840)
Caused by: com.puppycrawl.tools.checkstyle.api.CheckstyleException: Exception was thrown while processing E:\All_XL\Docs\eo-intellij-plugin\src\main\java\org\eolang\jetbrains\EoExternalAnnotator.java
    at com.puppycrawl.tools.checkstyle.Checker.processFiles (Checker.java:312)
    at com.puppycrawl.tools.checkstyle.Checker.process (Checker.java:226)
    at com.qulice.checkstyle.CheckstyleValidator.validate (CheckstyleValidator.java:106)
    at com.qulice.maven.CheckMojo$ValidatorCallable.call (CheckMojo.java:236)
    at com.qulice.maven.CheckMojo$ValidatorCallable.call (CheckMojo.java:204)
    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:840)
Caused by: java.lang.RuntimeException: java.lang.StringIndexOutOfBoundsException: begin 6, end 4, length 6
    at org.cactoos.text.UncheckedText.lambda$new$0 (UncheckedText.java:71)
    at org.cactoos.func.UncheckedFunc.lambda$apply$0 (UncheckedFunc.java:56)
    at org.cactoos.scalar.Checked.value (Checked.java:76)
    at org.cactoos.scalar.IoChecked.value (IoChecked.java:63)
    at org.cactoos.scalar.Unchecked.value (Unchecked.java:56)
    at org.cactoos.func.UncheckedFunc.apply (UncheckedFunc.java:57)
    at org.cactoos.text.UncheckedText.asString (UncheckedText.java:95)
    at org.cactoos.text.TextOfScalar.toString (TextOfScalar.java:63)
    at org.cactoos.text.TextEnvelope.toString (TextEnvelope.java:56)
    at org.cactoos.text.TextEnvelope.toString (TextEnvelope.java:56)
    at org.cactoos.text.TextEnvelope.toString (TextEnvelope.java:56)
    at com.qulice.checkstyle.MultilineJavadocTagsCheck.checkJavaDoc (MultilineJavadocTagsCheck.java:119)
    at com.qulice.checkstyle.MultilineJavadocTagsCheck.visitToken (MultilineJavadocTagsCheck.java:92)
    at com.puppycrawl.tools.checkstyle.TreeWalker.notifyVisit (TreeWalker.java:335)
    at com.puppycrawl.tools.checkstyle.TreeWalker.processIter (TreeWalker.java:408)
    at com.puppycrawl.tools.checkstyle.TreeWalker.walk (TreeWalker.java:273)
    at com.puppycrawl.tools.checkstyle.TreeWalker.processFiltered (TreeWalker.java:154)
    at com.puppycrawl.tools.checkstyle.api.AbstractFileSetCheck.process (AbstractFileSetCheck.java:101)
Caused by: java.lang.IllegalStateException: Failed to process files

    at com.puppycrawl.tools.checkstyle.Checker.processFile (Checker.java:340)
Caused by: com.puppycrawl.tools.checkstyle.api.CheckstyleException: Exception was thrown while processing E:\All_XL\Docs\eo-intellij-plugin\src\main\java\org\eolang\jetbrains\EoExternalAnnotator.java

    at com.puppycrawl.tools.checkstyle.Checker.processFiles (Checker.java:299)
Caused by: java.lang.RuntimeException: java.lang.StringIndexOutOfBoundsException: begin 6, end 4, length 6

    at com.puppycrawl.tools.checkstyle.Checker.process (Checker.java:226)
    at com.qulice.checkstyle.CheckstyleValidator.validate (CheckstyleValidator.java:106)
    at com.qulice.maven.CheckMojo$ValidatorCallable.call (CheckMojo.java:236)
    at com.qulice.maven.CheckMojo$ValidatorCallable.call (CheckMojo.java:204)
    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:840)
Caused by: java.lang.StringIndexOutOfBoundsException: begin 6, end 4, length 6
Caused by: java.lang.StringIndexOutOfBoundsException: begin 6, end 4, length 6

    at java.lang.String.checkBoundsBeginEnd (String.java:4606)
    at java.lang.String.substring (String.java:2709)
    at org.cactoos.text.Sub.lambda$new$0 (Sub.java:158)
    at org.cactoos.text.Mapped.lambda$new$0 (Mapped.java:44)
    at org.cactoos.text.TextOfScalar.asString (TextOfScalar.java:58)
    at org.cactoos.text.UncheckedText.asString (UncheckedText.java:92)
    at org.cactoos.text.TextOfScalar.toString (TextOfScalar.java:63)
    at org.cactoos.text.TextEnvelope.toString (TextEnvelope.java:56)
    at org.cactoos.text.TextEnvelope.toString (TextEnvelope.java:56)
    at org.cactoos.text.TextEnvelope.toString (TextEnvelope.java:56)
    at com.qulice.checkstyle.MultilineJavadocTagsCheck.checkJavaDoc (MultilineJavadocTagsCheck.java:119)
    at com.qulice.checkstyle.MultilineJavadocTagsCheck.visitToken (MultilineJavadocTagsCheck.java:92)
    at com.puppycrawl.tools.checkstyle.TreeWalker.notifyVisit (TreeWalker.java:335)
    at com.puppycrawl.tools.checkstyle.TreeWalker.processIter (TreeWalker.java:408)
    at com.puppycrawl.tools.checkstyle.TreeWalker.walk (TreeWalker.java:273)
    at com.puppycrawl.tools.checkstyle.TreeWalker.processFiltered (TreeWalker.java:154)
    at com.puppycrawl.tools.checkstyle.api.AbstractFileSetCheck.process (AbstractFileSetCheck.java:101)
    at com.puppycrawl.tools.checkstyle.Checker.processFile (Checker.java:340)
    at com.puppycrawl.tools.checkstyle.Checker.processFiles (Checker.java:299)
    at com.puppycrawl.tools.checkstyle.Checker.process (Checker.java:226)
    at com.qulice.checkstyle.CheckstyleValidator.validate (CheckstyleValidator.java:106)
    at com.qulice.maven.CheckMojo$ValidatorCallable.call (CheckMojo.java:236)
    at com.qulice.maven.CheckMojo$ValidatorCallable.call (CheckMojo.java:204)
    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:840)
[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/PluginExecutionException

> Task :qulice FAILED

Execution failed for task ':qulice'.
> Process 'command 'mvn.cmd'' finished with non-zero exit value 1


Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions