lombok-intellij-plugin: Lombok exceptions on latest Intelliji Idea

Short description

Provide a short description of the issue here. Do not include stacktraces in this sectrion

getting exceptions while using lombok in new Intelliji Idea

During querying provider Run line marker (class com.intellij.execution.lineMarker.RunLineMarkerProvider)

com.intellij.diagnostic.PluginException: Element: class de.plushnikov.intellij.plugin.psi.LombokLightClassBuilder #JAVA because: psi is outdated invalidated at: no info [Plugin: Lombook Plugin] at com.intellij.ide.plugins.PluginManagerCore.createPluginException(PluginManagerCore.java:290) at com.intellij.diagnostic.PluginProblemReporterImpl.createPluginExceptionByClass(PluginProblemReporterImpl.java:12) at com.intellij.diagnostic.PluginException.createByClass(PluginException.java:67) at com.intellij.psi.util.PsiUtilCore.ensureValid(PsiUtilCore.java:478) at com.intellij.psi.impl.PsiClassImplUtil.lambda$createMembersMap$4(PsiClassImplUtil.java:346) at com.intellij.util.containers.ConcurrentFactoryMap$2.create(ConcurrentFactoryMap.java:174) at com.intellij.util.containers.ConcurrentFactoryMap.get(ConcurrentFactoryMap.java:40) at com.intellij.psi.impl.PsiClassImplUtil$MembersMap.get(PsiClassImplUtil.java:326) at com.intellij.psi.impl.PsiClassImplUtil$MembersMap.access$000(PsiClassImplUtil.java:318) at com.intellij.psi.impl.PsiClassImplUtil.getMap(PsiClassImplUtil.java:175) at com.intellij.psi.impl.PsiClassImplUtil.getAllByMap(PsiClassImplUtil.java:166) at com.intellij.psi.impl.PsiClassImplUtil.getAllInnerClasses(PsiClassImplUtil.java:63) at com.intellij.psi.impl.source.PsiClassImpl.getAllInnerClasses(PsiClassImpl.java:340) at com.intellij.execution.junit.JUnitUtil.lambda$isJUnit5TestClass$1(JUnitUtil.java:317) at com.intellij.psi.util.CachedValuesManager$1.compute(CachedValuesManager.java:153) at com.intellij.psi.impl.PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:54) at com.intellij.util.CachedValueBase.lambda$getValueWithLock$1(CachedValueBase.java:235) at com.intellij.openapi.util.RecursionManager$1.doPreventingRecursion(RecursionManager.java:112) at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:71) at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:236) at com.intellij.psi.impl.PsiCachedValueImpl.getValue(PsiCachedValueImpl.java:43) at com.intellij.util.CachedValuesManagerImpl.getCachedValue(CachedValuesManagerImpl.java:76) at com.intellij.psi.util.CachedValuesManager.getCachedValue(CachedValuesManager.java:150) at com.intellij.psi.util.CachedValuesManager.getCachedValue(CachedValuesManager.java:120) at com.intellij.execution.junit.JUnitUtil.isJUnit5TestClass(JUnitUtil.java:306) at com.intellij.execution.junit.JUnit5Framework.isTestClass(JUnit5Framework.java:56) at com.intellij.testIntegration.JavaTestFramework.isTestClass(JavaTestFramework.java:55) at com.intellij.codeInsight.TestFrameworks.computeFramework(TestFrameworks.java:88) at com.intellij.codeInsight.TestFrameworks.lambda$detectFramework$0(TestFrameworks.java:59) at com.intellij.psi.util.CachedValuesManager$1.compute(CachedValuesManager.java:153) at com.intellij.psi.impl.PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:54) at com.intellij.util.CachedValueBase.lambda$getValueWithLock$1(CachedValueBase.java:235) at com.intellij.openapi.util.RecursionManager$1.doPreventingRecursion(RecursionManager.java:112) at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:71) at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:236) at com.intellij.psi.impl.PsiCachedValueImpl.getValue(PsiCachedValueImpl.java:43) at com.intellij.util.CachedValuesManagerImpl.getCachedValue(CachedValuesManagerImpl.java:76) at com.intellij.psi.util.CachedValuesManager.getCachedValue(CachedValuesManager.java:150) at com.intellij.psi.util.CachedValuesManager.getCachedValue(CachedValuesManager.java:120) at com.intellij.codeInsight.TestFrameworks.detectFramework(TestFrameworks.java:58) at com.intellij.testIntegration.TestRunLineMarkerProvider.getInfo(TestRunLineMarkerProvider.java:25) at com.intellij.execution.lineMarker.RunLineMarkerProvider.getLineMarkerInfo(RunLineMarkerProvider.java:50) at com.intellij.codeInsight.daemon.impl.LineMarkersPass.queryProviders(LineMarkersPass.java:163) at com.intellij.codeInsight.daemon.impl.LineMarkersPass.lambda$doCollectInformation$3(LineMarkersPass.java:88) at com.intellij.codeInsight.daemon.impl.Divider.divideInsideAndOutsideInOneRoot(Divider.java:81) at com.intellij.codeInsight.daemon.impl.LineMarkersPass.doCollectInformation(LineMarkersPass.java:83) at com.intellij.codeHighlighting.TextEditorHighlightingPass.collectInformation(TextEditorHighlightingPass.java:54) at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$1(PassExecutorService.java:399) at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1110) at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$2(PassExecutorService.java:392) at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:629) at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:581) at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60) at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.doRun(PassExecutorService.java:391) at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$run$0(PassExecutorService.java:367) at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:170) at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:182) at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.run(PassExecutorService.java:365) at com.intellij.concurrency.JobLauncherImpl$VoidForkJoinTask$1.exec(JobLauncherImpl.java:181) at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020) at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656) at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177) Caused by: com.intellij.psi.PsiInvalidElementAccessException: Element: class de.plushnikov.intellij.plugin.psi.LombokLightClassBuilder #JAVA because: psi is outdated invalidated at: no info … 61 more

Expected behavior

Is there a specific expected behavior?

Version information

  • IDEA Version: Please provide full IntelliJ IDEA Version - available from About view
  • JDK Version: What is your JDK version, including update level?
  • OS Type & Version: Are you on Mac/Windows/Linux? Provide as much information as possible about versions
  • Lombok Plugin Version: _What is the version of the plugin installed?`_0.30 EPA
  • Lombok Dependency Version: What version of lombok.jar are you using? Latest on Spring boot 2.3.2

Steps to reproduce

What steps do we need to take to reproduce this issue?

  1. ??? just try to anotate a class with any of the lombok annotation eg : @RequiredArgsContructor
  2. ???
  3. ???

Sample project

Please provide a sample project that exhibits the problem. You should also include .idea folder so we can inspect the settings.

  • Sample project provided
  • [ X] I am able to reproduce this error on the sample project by following the steps described above

Additional information

Is there any additional information you can provide to help us understanding and solving the issue?

Stacktrace

If you are experiencing an issue and IntelliJ throws an error please provide the stacktrace.


STACKTRACE HERE (inside code markup)
provider: de.plushnikov.intellij.plugin.provider.LombokAugmentProvider@4bbe8059

com.intellij.diagnostic.PluginException: Element: class de.plushnikov.intellij.plugin.psi.LombokLightClassBuilder #JAVA  because: psi is outdated
invalidated at: no info [Plugin: Lombook Plugin]
	at com.intellij.ide.plugins.PluginManagerCore.createPluginException(PluginManagerCore.java:290)
	at com.intellij.diagnostic.PluginProblemReporterImpl.createPluginExceptionByClass(PluginProblemReporterImpl.java:12)
	at com.intellij.diagnostic.PluginException.createByClass(PluginException.java:67)
	at com.intellij.psi.util.PsiUtilCore.ensureValid(PsiUtilCore.java:478)
	at com.intellij.psi.impl.PsiClassImplUtil.lambda$createMembersMap$4(PsiClassImplUtil.java:346)
	at com.intellij.util.containers.ConcurrentFactoryMap$2.create(ConcurrentFactoryMap.java:174)
	at com.intellij.util.containers.ConcurrentFactoryMap.get(ConcurrentFactoryMap.java:40)
	at com.intellij.psi.impl.PsiClassImplUtil$MembersMap.get(PsiClassImplUtil.java:326)
	at com.intellij.psi.impl.PsiClassImplUtil$MembersMap.access$000(PsiClassImplUtil.java:318)
	at com.intellij.psi.impl.PsiClassImplUtil.processCachedMembersByName(PsiClassImplUtil.java:498)
	at com.intellij.psi.impl.PsiClassImplUtil.processDeclarationsInClass(PsiClassImplUtil.java:412)
	at com.intellij.psi.impl.PsiClassImplUtil.processDeclarationsInClass(PsiClassImplUtil.java:389)
	at com.intellij.psi.impl.source.PsiClassImpl.processDeclarations(PsiClassImpl.java:474)
	at com.intellij.psi.scope.util.PsiScopesUtil.treeWalkUp(PsiScopesUtil.java:75)
	at com.intellij.psi.scope.util.PsiScopesUtil.treeWalkUp(PsiScopesUtil.java:54)
	at com.intellij.psi.scope.util.PsiScopesUtil.resolveAndWalk(PsiScopesUtil.java:221)
	at com.intellij.psi.scope.util.PsiScopesUtil.resolveAndWalk(PsiScopesUtil.java:150)
	at com.intellij.psi.impl.source.resolve.ResolveClassUtil.resolveClass(ResolveClassUtil.java:50)
	at com.intellij.psi.impl.source.resolve.PsiResolveHelperImpl.resolveReferencedClass(PsiResolveHelperImpl.java:84)
	at com.intellij.codeInsight.intention.AddAnnotationPsiFix.choosePlace(AddAnnotationPsiFix.java:209)
	at com.intellij.codeInsight.intention.AddAnnotationPsiFix.<init>(AddAnnotationPsiFix.java:56)
	at com.intellij.codeInsight.intention.AddAnnotationFix.<init>(AddAnnotationFix.java:39)
	at de.plushnikov.intellij.plugin.quickfix.PsiQuickFixFactory.createAddAnnotationQuickFix(PsiQuickFixFactory.java:26)
	at de.plushnikov.intellij.plugin.processor.clazz.EqualsAndHashCodeProcessor.validateCallSuperParamExtern(EqualsAndHashCodeProcessor.java:82)
	at de.plushnikov.intellij.plugin.processor.clazz.DataProcessor.validate(DataProcessor.java:64)
	at de.plushnikov.intellij.plugin.processor.clazz.AbstractClassProcessor.process(AbstractClassProcessor.java:64)
	at de.plushnikov.intellij.plugin.provider.LombokAugmentProvider.getPsis(LombokAugmentProvider.java:167)
	at de.plushnikov.intellij.plugin.provider.LombokAugmentProvider.access$000(LombokAugmentProvider.java:39)
	at de.plushnikov.intellij.plugin.provider.LombokAugmentProvider$LombokCachedValueProvider.computeIntern(LombokAugmentProvider.java:156)
	at com.intellij.openapi.util.RecursionManager$1.doPreventingRecursion(RecursionManager.java:112)
	at de.plushnikov.intellij.plugin.provider.LombokAugmentProvider$LombokCachedValueProvider.compute(LombokAugmentProvider.java:150)
	at com.intellij.psi.util.CachedValuesManager$1.compute(CachedValuesManager.java:153)
	at com.intellij.psi.impl.PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:54)
	at com.intellij.util.CachedValueBase.lambda$getValueWithLock$1(CachedValueBase.java:235)
	at com.intellij.openapi.util.RecursionManager$1.doPreventingRecursion(RecursionManager.java:112)
	at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:71)
	at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:236)
	at com.intellij.psi.impl.PsiCachedValueImpl.getValue(PsiCachedValueImpl.java:43)
	at com.intellij.util.CachedValuesManagerImpl.getCachedValue(CachedValuesManagerImpl.java:76)
	at com.intellij.psi.util.CachedValuesManager.getCachedValue(CachedValuesManager.java:150)
	at com.intellij.psi.util.CachedValuesManager.getCachedValue(CachedValuesManager.java:120)
	at de.plushnikov.intellij.plugin.provider.LombokAugmentProvider.getAugments(LombokAugmentProvider.java:104)
	at com.intellij.psi.augment.PsiAugmentProvider.lambda$getAugments$0(PsiAugmentProvider.java:57)
	at com.intellij.util.containers.ConcurrentFactoryMap$2.create(ConcurrentFactoryMap.java:174)
	at com.intellij.util.containers.ConcurrentFactoryMap.get(ConcurrentFactoryMap.java:40)
	at com.intellij.psi.augment.PsiAugmentProvider.getAugments(PsiAugmentProvider.java:60)
	at com.intellij.psi.augment.PsiAugmentProvider.lambda$collectAugments$2(PsiAugmentProvider.java:109)
	at com.intellij.psi.augment.PsiAugmentProvider.forEach(PsiAugmentProvider.java:167)
	at com.intellij.psi.augment.PsiAugmentProvider.collectAugments(PsiAugmentProvider.java:108)
	at com.intellij.psi.impl.source.ClassInnerStuffCache.lambda$getMethodsMap$10(ClassInnerStuffCache.java:173)
	at com.intellij.util.containers.ConcurrentFactoryMap$2.create(ConcurrentFactoryMap.java:174)
	at com.intellij.util.containers.ConcurrentFactoryMap.get(ConcurrentFactoryMap.java:40)
	at com.intellij.psi.impl.source.ClassInnerStuffCache.findMethodsByName(ClassInnerStuffCache.java:72)
	at com.intellij.psi.impl.source.PsiClassImpl.findMethodsByName(PsiClassImpl.java:360)
	at com.intellij.psi.impl.PsiClassImplUtil.findMethodsAndTheirSubstitutorsByName(PsiClassImplUtil.java:895)
	at com.intellij.psi.impl.source.PsiClassImpl.findMethodsAndTheirSubstitutorsByName(PsiClassImpl.java:366)
	at com.intellij.psi.util.MethodSignatureUtil.findMethodBySignature(MethodSignatureUtil.java:239)
	at com.intellij.psi.util.PsiSuperMethodUtil.collectOverrideEquivalents(PsiSuperMethodUtil.java:83)
	at com.intellij.codeInsight.daemon.impl.analysis.GenericsHighlightUtil.checkUnrelatedDefaultMethods(GenericsHighlightUtil.java:420)
	at com.intellij.codeInsight.daemon.impl.analysis.HighlightVisitorImpl.visitIdentifier(HighlightVisitorImpl.java:729)
	at com.intellij.psi.impl.source.tree.java.PsiIdentifierImpl.accept(PsiIdentifierImpl.java:36)
	at com.intellij.codeInsight.daemon.impl.analysis.HighlightVisitorImpl.visit(HighlightVisitorImpl.java:184)
	at com.intellij.codeInsight.daemon.impl.GeneralHighlightingPass.runVisitors(GeneralHighlightingPass.java:338)
	at com.intellij.codeInsight.daemon.impl.GeneralHighlightingPass.lambda$collectHighlights$5(GeneralHighlightingPass.java:271)
	at com.intellij.codeInsight.daemon.impl.GeneralHighlightingPass.analyzeByVisitors(GeneralHighlightingPass.java:297)
	at com.intellij.codeInsight.daemon.impl.GeneralHighlightingPass.lambda$analyzeByVisitors$6(GeneralHighlightingPass.java:300)
	at com.intellij.codeInsight.daemon.impl.analysis.HighlightVisitorImpl.lambda$analyze$1(HighlightVisitorImpl.java:209)
	at com.intellij.codeInsight.daemon.impl.analysis.RefCountHolder.analyze(RefCountHolder.java:362)
	at com.intellij.codeInsight.daemon.impl.analysis.HighlightVisitorImpl.analyze(HighlightVisitorImpl.java:208)
	at com.intellij.codeInsight.daemon.impl.GeneralHighlightingPass.analyzeByVisitors(GeneralHighlightingPass.java:300)
	at com.intellij.codeInsight.daemon.impl.GeneralHighlightingPass.lambda$analyzeByVisitors$6(GeneralHighlightingPass.java:300)
	at com.intellij.codeInsight.daemon.impl.DefaultHighlightVisitor.analyze(DefaultHighlightVisitor.java:96)
	at com.intellij.codeInsight.daemon.impl.GeneralHighlightingPass.analyzeByVisitors(GeneralHighlightingPass.java:300)
	at com.intellij.codeInsight.daemon.impl.GeneralHighlightingPass.collectHighlights(GeneralHighlightingPass.java:268)
	at com.intellij.codeInsight.daemon.impl.GeneralHighlightingPass.collectInformationWithProgress(GeneralHighlightingPass.java:214)
	at com.intellij.codeInsight.daemon.impl.ProgressableTextEditorHighlightingPass.doCollectInformation(ProgressableTextEditorHighlightingPass.java:80)
	at com.intellij.codeHighlighting.TextEditorHighlightingPass.collectInformation(TextEditorHighlightingPass.java:54)
	at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$1(PassExecutorService.java:399)
	at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1110)
	at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$doRun$2(PassExecutorService.java:392)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:629)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:581)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
	at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.doRun(PassExecutorService.java:391)
	at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.lambda$run$0(PassExecutorService.java:367)
	at com.intellij.openapi.application.impl.ReadMostlyRWLock.executeByImpatientReader(ReadMostlyRWLock.java:170)
	at com.intellij.openapi.application.impl.ApplicationImpl.executeByImpatientReader(ApplicationImpl.java:182)
	at com.intellij.codeInsight.daemon.impl.PassExecutorService$ScheduledPass.run(PassExecutorService.java:365)
	at com.intellij.concurrency.JobLauncherImpl$VoidForkJoinTask$1.exec(JobLauncherImpl.java:181)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
	at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
	at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:177)
Caused by: com.intellij.psi.PsiInvalidElementAccessException: Element: class de.plushnikov.intellij.plugin.psi.LombokLightClassBuilder #JAVA  because: psi is outdated
invalidated at: no info
	... 91 more

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Reactions: 16
  • Comments: 16 (1 by maintainers)

Commits related to this issue

Most upvoted comments

可以先禁用lombok插件,然后重启IntelliJ IDEA,再启用lombok插件。 我的是这样恢复的。

可以先禁用lombok插件,然后重启IntelliJ IDEA,再启用lombok插件。 我的是这样恢复的。

Brilliant, I tried your advice, and it worked fine for me Thx

actually I tried all that - but as soon I annotate again with @RequiredArgsConstruct - it crashes again