Uploaded image for project: 'MongoDB for IntelliJ Plugin'
  1. MongoDB for IntelliJ Plugin
  2. INTELLIJ-231

NoSuchMethodError when interacting with Spring Data Repository

    • Type: Icon: Bug Bug
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: 0.0.5, 0.0.6
    • Component/s: None
    • None
    • Environment:
      OS: MacOS 15.3
      node.js / npm versions: 23.1.0/10.9.0
      Additional info: Intellij version 2024.3.2.2 Ultimate
    • Developer Tools

      Problem Statement/Rationale

      I keep getting "IDE error occurred" when writing queries in a Spring Data MongoRepository.

      Steps to Reproduce

      1. Create a new interface extending MongoRepository.
      2. Add a method.
      3. Annotate the method with @Query and start writing the query
      4. Errors appear randomly throughout this process

      Additional Notes

      Stacktrace:

      java.lang.NoSuchMethodError: 'boolean com.intellij.database.util.common.CollectionFun.containsElements(java.lang.Object[], kotlin.jvm.functions.Function1)'
          at com.mongodb.jbplugin.dialects.springquery.SpringAtQueryDialectParser$findParentMethodWithQueryAnnotation$1.invoke(SpringAtQueryDialectParser.kt:275)
          at com.mongodb.jbplugin.dialects.springquery.SpringAtQueryDialectParser$findParentMethodWithQueryAnnotation$1.invoke(SpringAtQueryDialectParser.kt:273)
          at com.mongodb.jbplugin.dialects.javadriver.glossary.PsiMdbTreeUtilKt.findTopParentBy(PsiMdbTreeUtil.kt:462)
          at com.mongodb.jbplugin.dialects.javadriver.glossary.PsiMdbTreeUtilKt.findTopParentBy(PsiMdbTreeUtil.kt:465)
          at com.mongodb.jbplugin.dialects.springquery.SpringAtQueryDialectParser.findParentMethodWithQueryAnnotation(SpringAtQueryDialectParser.kt:273)
          at com.mongodb.jbplugin.dialects.springquery.SpringAtQueryDialectParser.isCandidateForQuery(SpringAtQueryDialectParser.kt:41)
          at com.mongodb.jbplugin.dialects.springquery.SpringAtQueryDialectParser.isCandidateForQuery(SpringAtQueryDialectParser.kt:35)
          at com.mongodb.jbplugin.inlays.MongoDbQueryNamespaceInlay$QueryNamespaceInlayHintsCollector.collectFromElement(MongoDbQueryNamespaceInlay.kt:32)
          at com.intellij.codeInsight.hints.declarative.SharedBypassCollector.collectFromElementForActions(DeclarativeInlayCollector.kt:27)
          at com.intellij.codeInsight.hints.declarative.impl.toggle.DeclarativeHintsTogglingIntentionMenuContributor$Context$Companion.gather(DeclarativeHintsTogglingIntentionMenuContributor.kt:123)
          at com.intellij.codeInsight.hints.declarative.impl.toggle.DeclarativeHintsTogglingIntentionMenuContributor.collectActions(DeclarativeHintsTogglingIntentionMenuContributor.kt:23)
          at com.intellij.codeInsight.daemon.impl.ShowIntentionsPass.getRegisteredIntentionActions(ShowIntentionsPass.java:407)
          at com.intellij.codeInsight.daemon.impl.ShowIntentionsPass.getActionsToShow(ShowIntentionsPass.java:350)
          at com.intellij.codeInsight.daemon.impl.ShowIntentionsPass.getActionsToShow(ShowIntentionsPass.java:285)
          at com.intellij.codeInsight.daemon.impl.ShowIntentionsPass.getActionsToShow(ShowIntentionsPass.java:277)
          at com.intellij.codeInsight.intention.impl.ShowIntentionActionsHandler.lambda$calcCachedIntentions$2(ShowIntentionActionsHandler.java:149)
          at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runReadAction(AnyThreadWriteThreadingSupport.kt:314)
          at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runReadAction(AnyThreadWriteThreadingSupport.kt:262)
          at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:864)
          at com.intellij.openapi.application.ReadAction.compute(ReadAction.java:66)
          at com.intellij.codeInsight.intention.impl.ShowIntentionActionsHandler.lambda$calcCachedIntentions$3(ShowIntentionActionsHandler.java:147)
          at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:857)
          at com.intellij.codeInsight.intention.impl.ShowIntentionActionsHandler.lambda$calcCachedIntentions$4(ShowIntentionActionsHandler.java:145)
          at com.intellij.openapi.progress.impl.CoreProgressManager$1.run(CoreProgressManager.java:313)
          at com.intellij.openapi.progress.impl.CoreProgressManager.startTask(CoreProgressManager.java:491)
          at com.intellij.openapi.progress.impl.ProgressManagerImpl.startTask(ProgressManagerImpl.java:133)
          at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcessWithProgressSynchronously$10(CoreProgressManager.java:581)
          at com.intellij.openapi.progress.impl.ProgressRunner.lambda$new$0(ProgressRunner.java:85)
          at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$4(ProgressRunner.java:249)
          at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$0(ProgressManager.java:98)
          at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$1(CoreProgressManager.java:223)
          at com.intellij.platform.diagnostic.telemetry.helpers.TraceKt.use(trace.kt:45)
          at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:222)
          at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$14(CoreProgressManager.java:674)
          at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:749)
          at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:705)
          at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:673)
          at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:79)
          at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:203)
          at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:98)
          at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$5(ProgressRunner.java:249)
          at com.intellij.openapi.progress.impl.ProgressRunner$ProgressRunnable.run(ProgressRunner.java:502)
          at com.intellij.openapi.progress.impl.ProgressRunner.lambda$launchTask$18(ProgressRunner.java:467)
          at com.intellij.util.concurrency.ChildContext$runInChildContext$1.invoke(propagation.kt:101)
          at com.intellij.util.concurrency.ChildContext$runInChildContext$1.invoke(propagation.kt:101)
          at com.intellij.util.concurrency.ChildContext.runInChildContext(propagation.kt:107)
          at com.intellij.util.concurrency.ChildContext.runInChildContext(propagation.kt:101)
          at com.intellij.openapi.progress.impl.ProgressRunner.lambda$launchTask$19(ProgressRunner.java:463)
          at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
          at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
          at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:735)
          at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:732)
          at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
          at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:732)
          at java.base/java.lang.Thread.run(Thread.java:1583)

       

            Assignee:
            kevin.mas@mongodb.com Kevin Mas Ruiz
            Reporter:
            giacomo.baso@xtn-lab.com Giacomo Baso
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: