Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incompatible with Intellij 2020.2 #840

Closed
clemstoquart opened this issue Jul 28, 2020 · 55 comments · Fixed by #860
Closed

Incompatible with Intellij 2020.2 #840

clemstoquart opened this issue Jul 28, 2020 · 55 comments · Fixed by #860

Comments

@clemstoquart
Copy link

Short description

Looks like lombok plugin is incompatible with Intellij 2020.2.

Expected behavior

Lombok plugin should work with Intellij 2020.2.

Version information

  • IDEA Version: 2020.2
@bhoogter
Copy link

Error from IntelliJ:

11:16 AM Plugin Error: Plugin "Lombok" is incompatible (until build 201.SNAPSHOT < IU-202.6397.94).

@romanthekat
Copy link

romanthekat commented Jul 28, 2020

There is 0.30 EAP release which should be working under 2020.2, so we shall wait for it become published for non-EAP :)

@zadam
Copy link

zadam commented Jul 28, 2020

It's the same issue as during the 2020.1 release - you need to uninstall the plugin, restart Idea, install lombok plugin 0.30 EAP and it works again.

@romanthekat
Copy link

romanthekat commented Jul 28, 2020

It's the same issue as during the 2020.1 release - you need to uninstall the plugin, restart Idea, install lombok plugin 0.30 EAP and it works again.

@zadam indeed, this bug happened again - thanks a lot!

p.s. but yeah, as mentioned later - it will have runtime problems

@sneakythr0ws
Copy link

sneakythr0ws commented Jul 28, 2020

There is 0.30 EAP release which should be working under 2020.2, so we shall wait for it become published for non-EAP :)

It doesn't work on EAP( #821

@Heatmanofurioso
Copy link

There is 0.30 EAP release which should be working under 2020.2, so we shall wait for it become published for non-EAP :)

It doesn't work on EAP( #821

You were using the EAP of IJ 2020.2
Did you also try with the release?

@toddlindner
Copy link

Same issue with IJ 2020.2 release. Not EAP

@vkadam
Copy link

vkadam commented Jul 28, 2020

Worked for me w/o needing to uninstall/install, I am able to see 0.30-EAP in plugin list

@Heatmanofurioso
Copy link

How do I add the EAP plugin version to install?

@alamer
Copy link

alamer commented Jul 29, 2020

@Heatmanofurioso just uninstall current plugin, then restart. And install again. Worked for me with IJ 2020.2 release

@jtonic
Copy link

jtonic commented Jul 29, 2020

@Heatmanofurioso just uninstall current plugin, then restart. And install again. Worked for me with IJ 2020.2 release

It doesn't work properly with IntelliJ Idea 2020.2.
I've installed the latest version of lombok plugin 0.30 EAP and when try to autocomplete a lombok annotation I've got the following IDE internal error.

com.intellij.diagnostic.PluginException: Element: class de.plushnikov.intellij.plugin.psi.LombokLightMethodBuilder #JAVA because: psi is outdated
invalidated at: no info [Plugin: Lombook Plugin]

image

@jtonic
Copy link

jtonic commented Jul 29, 2020

@Heatmanofurioso just uninstall current plugin, then restart. And install again. Worked for me with IJ 2020.2 release

It doesn't work properly with IntelliJ Idea 2020.2.
I've installed the latest version of lombok plugin 0.30 EAP and when try to autocomplete a lombok annotation I've got the following IDE internal error.

com.intellij.diagnostic.PluginException: Element: class de.plushnikov.intellij.plugin.psi.LombokLightMethodBuilder #JAVA because: psi is outdated invalidated at: no info [Plugin: Lombook Plugin]

image

And in fact there are a lot of other issues in IntelliJ regarding the lombok-ized classes. The same error (as above) occurs when trying to see the constructor parameters at the call site.
Definitely we need to wait for non EAP version of the plugin

@TheBestPessimist
Copy link

Please see: #829 (comment)

@Ryaryu
Copy link

Ryaryu commented Jul 29, 2020

I've fixed this for myself, cloning the project, changing the ideaVersion= to 2020.2 in gradle.properties and building, then installing this new plugin.

@rupert-madden-abbott
Copy link

rupert-madden-abbott commented Jul 29, 2020

It's the same issue as during the 2020.1 release - you need to uninstall the plugin, restart Idea, install lombok plugin 0.30 EAP and it works again.

This didn't work for me.

I've fixed this for myself, cloning the project, changing the ideaVersion= to 2020.2 in gradle.properties and building, then installing this new plugin.

Update This worked for a little bit and then broke again. There are actual issues with the plugin and compatibility with 2020.2. Actual solution is to revert back to 2020.1 until the plugin is updated.

Previous

This did work.

First I uninstalled the version of the plugin installed from the marketplace and restarted IntelliJ.

Then, after editing gradle.properties, to build just run ./gradlew build in the root directory. Took 3m 40s to build on my machine.

To install, open Plugins screen in IntelliJ and click the cog wheel in the menu bar, then "Install Plugin from disk". You can find the built plugin jar under build/libs.

@astubbs
Copy link

astubbs commented Jul 29, 2020

That got it working - ok, but are there actually any issues with the plugin? I assume it was set to that version because it hasn't been tested on the new version yet. Let us know if you run into any issues using it with the ~forced upgrade?

@Nosbielc
Copy link

worked for me, thanks

note: 0.30-EAP

@Ryaryu
Copy link

Ryaryu commented Jul 29, 2020

That got it working - ok, but are there actually any issues with the plugin? I assume it was set to that version because it hasn't been tested on the new version yet. Let us know if you run into any issues using it with the ~forced upgrade?

As @rupert-madden-abbott updated response states, the plugin still crashes after some time, I've noticed this too. At least the IDE can recognize the generated methods with the forced upgrade. The safe bet for now is to wait for the real fix while using 2020.1.

@pstephenmurphy
Copy link

When can we expect a release that works with:

IntelliJ IDEA 2020.2 (Ultimate Edition)
Build #IU-202.6397.94, built on July 27, 2020

0.30-EAP does not.

Screen Shot 2020-07-29 at 11 09 35 AM

@ajchun
Copy link

ajchun commented Jul 30, 2020

i've never worked with IntelliJ plugins, but i think the issue is here.

basically, the plugin system will intern the psi elements based on the equality.

because this doesn't take into account the navigationElement, the two instances with different navigationElements will be equal and it'll use the previous version. unfortunately, the previous version's navigationElement isn't valid, so it fails.

if you update the equality check from:
return Objects.equals(myReturnTypeAsText, that.myReturnTypeAsText);
to something like (this is me just hacking something to see if it works, clearly the author will know a better check):
return isValid() == that.isValid() && Objects.equals(getNavigationElement(), that.getNavigationElement()) && Objects.equals(myReturnTypeAsText, that.myReturnTypeAsText);

it won't de-dupe the two LombokLightMethodBuilder.

here's the patch:

Index: src/main/java/de/plushnikov/intellij/plugin/psi/LombokLightMethodBuilder.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- src/main/java/de/plushnikov/intellij/plugin/psi/LombokLightMethodBuilder.java	(revision 52195c0fdacd1fdfb74a3b13165d53c561b0f873)
+++ src/main/java/de/plushnikov/intellij/plugin/psi/LombokLightMethodBuilder.java	(date 1596080717644)
@@ -287,7 +287,8 @@
     if (!getParameterList().equals(that.getParameterList())) {
       return false;
     }
-    return Objects.equals(myReturnTypeAsText, that.myReturnTypeAsText);
+
+    return isValid() == that.isValid() && Objects.equals(getNavigationElement(), that.getNavigationElement()) && Objects.equals(myReturnTypeAsText, that.myReturnTypeAsText);
   }
 
   @Override
Index: gradle.properties
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- gradle.properties	(revision 52195c0fdacd1fdfb74a3b13165d53c561b0f873)
+++ gradle.properties	(date 1596080940034)
@@ -4,11 +4,11 @@
 #
 #ideaVersion=2020.1
 #ideaVersion=2020.1.2
-ideaVersion=LATEST-EAP-SNAPSHOT
+ideaVersion=2020.2
 #
 pluginGroup=de.plushnikov.intellij.plugin
 pluginName=lombok-plugin
-pluginVersion=0.30
+pluginVersion=0.30-patch
 #
 javaVersion=1.8
 sources=true

i uploaded a jar here:

Removed Link. This doesn't fix the issue.

@theexiile1305
Copy link

Same problem on my project.
Version information
IDEA Version: **IntelliJ IDEA 2020.2 (Ultimate Edition) Build #IU-202.6397.94, built on July 27, 2020
JDK Version: OpenJDK Runtime Environment AdoptOpenJDK (build 14.0.1+7)
OS Type & Version: macOS 10.15.6
Lombok Plugin Version: 0.30 EPA
Lombok Dependency Version: Latest on Spring boot 2.3.1

@jtonic
Copy link

jtonic commented Jul 30, 2020

i've never worked with IntelliJ plugins, but i think the issue is here.

basically, the plugin system will intern the psi elements based on the equality.

because this doesn't take into account the navigationElement, the two instances with different navigationElements will be equal and it'll use the previous version. unfortunately, the previous version's navigationElement isn't valid, so it fails.

if you update the equality check from:
return Objects.equals(myReturnTypeAsText, that.myReturnTypeAsText);
to something like (this is me just hacking something to see if it works, clearly the author will know a better check):
return isValid() == that.isValid() && Objects.equals(getNavigationElement(), that.getNavigationElement()) && Objects.equals(myReturnTypeAsText, that.myReturnTypeAsText);

it won't de-dupe the two LombokLightMethodBuilder.

here's the patch:

Index: src/main/java/de/plushnikov/intellij/plugin/psi/LombokLightMethodBuilder.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- src/main/java/de/plushnikov/intellij/plugin/psi/LombokLightMethodBuilder.java	(revision 52195c0fdacd1fdfb74a3b13165d53c561b0f873)
+++ src/main/java/de/plushnikov/intellij/plugin/psi/LombokLightMethodBuilder.java	(date 1596080717644)
@@ -287,7 +287,8 @@
     if (!getParameterList().equals(that.getParameterList())) {
       return false;
     }
-    return Objects.equals(myReturnTypeAsText, that.myReturnTypeAsText);
+
+    return isValid() == that.isValid() && Objects.equals(getNavigationElement(), that.getNavigationElement()) && Objects.equals(myReturnTypeAsText, that.myReturnTypeAsText);
   }
 
   @Override
Index: gradle.properties
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- gradle.properties	(revision 52195c0fdacd1fdfb74a3b13165d53c561b0f873)
+++ gradle.properties	(date 1596080940034)
@@ -4,11 +4,11 @@
 #
 #ideaVersion=2020.1
 #ideaVersion=2020.1.2
-ideaVersion=LATEST-EAP-SNAPSHOT
+ideaVersion=2020.2
 #
 pluginGroup=de.plushnikov.intellij.plugin
 pluginName=lombok-plugin
-pluginVersion=0.30
+pluginVersion=0.30-patch
 #
 javaVersion=1.8
 sources=true

i uploaded a jar here:

Wow!!!

This is a good contribution.
I've installed the patch from file and all the observed issues simply disappeared. Also no further IDE fatal errors shown by the Idea.

I'm looking forward to see this PR merged and released via market place.

@Marek00Malik
Copy link

Any updates on this? It causes the IDEA to be super unhealthy.

@pstephenmurphy
Copy link

pstephenmurphy commented Jul 30, 2020

The above patch does not fix my problem.

Screen Shot 2020-07-29 at 11 09 35 AM

That field in red is decorated with the @Singular annotation.

2020-07-30 09:43:43,838 [ 302652] ERROR - aemon.impl.PassExecutorService - IntelliJ IDEA 2020.2 Build #IU-202.6397.94
2020-07-30 09:43:43,838 [ 302652] ERROR - aemon.impl.PassExecutorService - JDK: 11.0.7; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o.
2020-07-30 09:43:43,838 [ 302652] ERROR - aemon.impl.PassExecutorService - OS: Mac OS X
2020-07-30 09:43:43,839 [ 302653] ERROR - aemon.impl.PassExecutorService - Plugin to blame: Lombok version: 0.30-patch-2020.2
2020-07-30 09:43:43,839 [ 302653] ERROR - aemon.impl.PassExecutorService - Last Action: GotoDeclaration
2020-07-30 09:43:48,563 [ 307377] ERROR - aemon.impl.PassExecutorService - Element: class de.plushnikov.intellij.plugin.psi.LombokLightClassBuilder #JAVA because: different providers: com.intellij.psi.DummyHolderViewProvider{vFile=LightVirtualFile: /DummyHolder, content=com.intellij.psi.AbstractFileViewProvider$PsiFileContent@79276a02, eventSystemEnabled=false}(4df01706); com.intellij.psi.SingleRootFileViewProvider{vFile=LightVirtualFile: /DummyHolder, content=VirtualFileContent{size=0}, eventSystemEnabled=true}(65201a44)
invalidated at: no info [Plugin: Lombook Plugin]
com.intellij.diagnostic.PluginException: Element: class de.plushnikov.intellij.plugin.psi.LombokLightClassBuilder #JAVA because: different providers: com.intellij.psi.DummyHolderViewProvider{vFile=LightVirtualFile: /DummyHolder, content=com.intellij.psi.AbstractFileViewProvider$PsiFileContent@79276a02, eventSystemEnabled=false}(4df01706); com.intellij.psi.SingleRootFileViewProvider{vFile=LightVirtualFile: /DummyHolder, content=VirtualFileContent{size=0}, eventSystemEnabled=true}(65201a44)
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.PsiJavaCodeReferenceElementImpl.resolve(PsiJavaCodeReferenceElementImpl.java:489)
at com.intellij.psi.impl.source.PsiJavaCodeReferenceElementImpl.access$100(PsiJavaCodeReferenceElementImpl.java:44)
at com.intellij.psi.impl.source.PsiJavaCodeReferenceElementImpl$OurGenericsResolver.resolve(PsiJavaCodeReferenceElementImpl.java:375)
at com.intellij.psi.impl.source.PsiJavaCodeReferenceElementImpl$OurGenericsResolver.resolve(PsiJavaCodeReferenceElementImpl.java:368)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolveWithCaching$2(ResolveCache.java:185)
at com.intellij.openapi.util.Computable.get(Computable.java:17)
at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$3(ResolveCache.java:227)
at com.intellij.openapi.util.RecursionManager$1.doPreventingRecursion(RecursionManager.java:112)
at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:71)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:204)
at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:185)
at com.intellij.psi.impl.PsiImplUtil.multiResolveImpl(PsiImplUtil.java:802)
at com.intellij.psi.impl.PsiImplUtil.multiResolveImpl(PsiImplUtil.java:794)
at com.intellij.psi.impl.source.PsiJavaCodeReferenceElementImpl.multiResolve(PsiJavaCodeReferenceElementImpl.java:423)
at com.intellij.psi.impl.source.PsiJavaCodeReferenceElementImpl.advancedResolve(PsiJavaCodeReferenceElementImpl.java:417)
at com.intellij.psi.impl.source.PsiJavaCodeReferenceElementImpl.resolve(PsiJavaCodeReferenceElementImpl.java:352)
at com.intellij.psi.impl.source.tree.JavaTreeCopyHandler.decodeInformation(JavaTreeCopyHandler.java:44)
at com.intellij.psi.impl.source.tree.ChangeUtil.lambda$decodeInformation$2(ChangeUtil.java:70)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
at java.base/java.util.Spliterators$IteratorSpliterator.tryAdvance(Spliterators.java:1812)
at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127)
at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:543)
at com.intellij.psi.impl.source.tree.ChangeUtil.decodeInformation(ChangeUtil.java:71)
at com.intellij.psi.impl.source.tree.ChangeUtil.decodeInformation(ChangeUtil.java:65)
at com.intellij.psi.impl.source.tree.ChangeUtil.decodeInformation(ChangeUtil.java:65)
at com.intellij.psi.impl.source.tree.ChangeUtil.decodeInformation(ChangeUtil.java:65)
at com.intellij.psi.impl.source.tree.ChangeUtil.decodeInformation(ChangeUtil.java:65)
at com.intellij.psi.impl.source.tree.ChangeUtil.decodeInformation(ChangeUtil.java:65)
at com.intellij.psi.impl.source.tree.ChangeUtil.lambda$decodeInformation$1(ChangeUtil.java:59)
at com.intellij.psi.impl.DebugUtil.performPsiModification(DebugUtil.java:575)
at com.intellij.psi.impl.source.tree.ChangeUtil.decodeInformation(ChangeUtil.java:59)
at com.intellij.psi.impl.source.tree.SharedImplUtil.doReplace(SharedImplUtil.java:197)
at com.intellij.psi.impl.source.JavaStubPsiElement.replace(JavaStubPsiElement.java:112)
at com.siyeh.ig.style.BoundedWildcardInspection.createClassCopy(BoundedWildcardInspection.java:360)
at com.siyeh.ig.style.BoundedWildcardInspection.lambda$canChangeTo$2(BoundedWildcardInspection.java:260)
at com.intellij.psi.impl.DebugUtil.performPsiModification(DebugUtil.java:575)
at com.siyeh.ig.style.BoundedWildcardInspection.canChangeTo(BoundedWildcardInspection.java:259)
at com.siyeh.ig.style.BoundedWildcardInspection.access$000(BoundedWildcardInspection.java:45)
at com.siyeh.ig.style.BoundedWildcardInspection$1.visitTypeElement(BoundedWildcardInspection.java:75)
at com.intellij.psi.impl.source.PsiTypeElementImpl.accept(PsiTypeElementImpl.java:58)
at com.intellij.codeInspection.InspectionEngine.acceptElements(InspectionEngine.java:65)
at com.intellij.codeInspection.InspectionEngine.createVisitorAndAcceptElements(InspectionEngine.java:56)
at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.runToolOnElements(LocalInspectionsPass.java:294)
at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.lambda$visitPriorityElementsAndInit$3(LocalInspectionsPass.java:263)
at com.intellij.util.AstLoadingFilter.forceAllowTreeLoading(AstLoadingFilter.java:155)
at com.intellij.util.AstLoadingFilter.forceAllowTreeLoading(AstLoadingFilter.java:147)
at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.lambda$visitPriorityElementsAndInit$4(LocalInspectionsPass.java:262)
at com.intellij.util.AstLoadingFilter.disallowTreeLoading(AstLoadingFilter.java:126)
at com.intellij.util.AstLoadingFilter.disallowTreeLoading(AstLoadingFilter.java:115)
at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.lambda$visitPriorityElementsAndInit$5(LocalInspectionsPass.java:262)
at com.intellij.concurrency.ApplierCompleter.execAndForkSubTasks(ApplierCompleter.java:149)
at com.intellij.concurrency.ApplierCompleter.execAndForkSubTasks(ApplierCompleter.java:162)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1110)
at com.intellij.concurrency.ApplierCompleter.lambda$wrapInReadActionAndIndicator$1(ApplierCompleter.java:105)
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.concurrency.ApplierCompleter.wrapInReadActionAndIndicator(ApplierCompleter.java:117)
at com.intellij.concurrency.ApplierCompleter.lambda$compute$0(ApplierCompleter.java:96)
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.concurrency.ApplierCompleter.compute(ApplierCompleter.java:96)
at java.base/java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:746)
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: different providers: com.intellij.psi.DummyHolderViewProvider{vFile=LightVirtualFile: /DummyHolder, content=com.intellij.psi.AbstractFileViewProvider$PsiFileContent@79276a02, eventSystemEnabled=false}(4df01706); com.intellij.psi.SingleRootFileViewProvider{vFile=LightVirtualFile: /DummyHolder, content=VirtualFileContent{size=0}, eventSystemEnabled=true}(65201a44)
invalidated at: no info
... 87 more

AND

2020-07-30 10:21:13,014 [1176606] WARN - Container.ComponentManagerImpl - Class constructor must not have parameters: de.plushnikov.intellij.plugin.settings.ProjectSettingsPage [Plugin: Lombook Plugin]
com.intellij.diagnostic.PluginException: Class constructor must not have parameters: de.plushnikov.intellij.plugin.settings.ProjectSettingsPage [Plugin: Lombook Plugin]
at com.intellij.serviceContainer.ComponentManagerImpl.instantiateExtensionWithPicoContainerOnlyIfNeeded(ComponentManagerImpl.kt:694)
at com.intellij.openapi.options.ConfigurableEP$ClassProducer.createElement(ConfigurableEP.java:422)
at com.intellij.openapi.options.ConfigurableEP.createConfigurable(ConfigurableEP.java:329)
at com.intellij.openapi.options.ex.ConfigurableWrapper.createConfigurable(ConfigurableWrapper.java:45)
at com.intellij.openapi.options.ex.ConfigurableWrapper.getConfigurable(ConfigurableWrapper.java:119)
at com.intellij.openapi.options.ex.ConfigurableWrapper.cast(ConfigurableWrapper.java:94)
at com.intellij.openapi.options.ex.ConfigurableWrapper.getId(ConfigurableWrapper.java:214)
at com.intellij.openapi.options.ex.ConfigurableExtensionPointUtil.groupConfigurables(ConfigurableExtensionPointUtil.java:267)
at com.intellij.openapi.options.ex.ConfigurableExtensionPointUtil.getConfigurableGroup(ConfigurableExtensionPointUtil.java:129)
at com.intellij.openapi.options.ex.ConfigurableExtensionPointUtil.lambda$getConfigurableGroup$1(ConfigurableExtensionPointUtil.java:119)
at com.intellij.openapi.util.ClearableLazyValue$2.compute(ClearableLazyValue.java:26)
at com.intellij.openapi.util.ClearableLazyValue.getValue(ClearableLazyValue.java:39)
at com.intellij.openapi.util.AtomicClearableLazyValue.getValue(AtomicClearableLazyValue.java:9)
at com.intellij.openapi.options.ex.EpBasedConfigurableGroup.(EpBasedConfigurableGroup.kt:113)
at com.intellij.openapi.options.ex.ConfigurableExtensionPointUtil.getConfigurableGroup(ConfigurableExtensionPointUtil.java:118)
at com.intellij.ide.actions.ShowSettingsUtilImpl.getConfigurableGroups(ShowSettingsUtilImpl.java:50)
at com.intellij.ide.actions.ShowSettingsAction.perform(ShowSettingsAction.java:54)
at com.intellij.ui.mac.MacOSApplicationProvider$Worker.lambda$initMacApplication$1(MacOSApplicationProvider.java:78)
at com.intellij.ui.mac.MacOSApplicationProvider$Worker.lambda$submit$7(MacOSApplicationProvider.java:175)
at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:201)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:802)
at com.intellij.openapi.application.impl.ApplicationImpl.lambda$invokeLater$4(ApplicationImpl.java:322)
at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:84)
at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:132)
at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:47)
at com.intellij.openapi.application.impl.FlushQueue$FlushNow.run(FlushQueue.java:188)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:967)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:839)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:450)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:744)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$9(IdeEventQueue.java:449)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:802)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:497)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

@jyan1011
Copy link

Waiting for new version

@mfgabriel92
Copy link

The solutions above did not work. Neither reinstalling the plugin again nor replacing the JAR with the modified one.

@YiuTerran
Copy link

Any update to fix the psi problem?

@TheBestPessimist
Copy link

TheBestPessimist commented Aug 17, 2020

Here's the update: 60c1f2e

@mplushnikov
Copy link
Owner

There are no fix at the moment. One of IntelliJ caches looks like broken. I'm waiting for comming change (Build: 202.7023) from Jetbrains in https://youtrack.jetbrains.com/issue/IDEA-248146 to verify if it fix the problem.

@carlitorendon
Copy link

@mplushnikov thank you for the great work you do man. Already went and left some comments to the JetBrains team. We already support lombok (paypal) but I can't wrap my head as to why they have not made Lombok (and you if you would like) as part of native IDEA.

@effiban
Copy link

effiban commented Aug 17, 2020

@mplushnikov - agree with @carlitorendon , in my company we have one huge repository that uses Lombok extensively and it wouldn't be possible without you.

@OmriYaHoo
Copy link

@mplushnikov thank you for the great work you do man. Already went and left some comments to the JetBrains team. We already support lombok (paypal) but I can't wrap my head as to why they have not made Lombok (and you if you would like) as part of native IDEA.

I actually started using IntelliJ 2019.3.5 back again since I can't work without Lombok in our company projects and all other solutions for the 2020 version that were suggested didn't solve it for me.

@Ryaryu
Copy link

Ryaryu commented Aug 19, 2020

@mplushnikov thank you for the great work you do man. Already went and left some comments to the JetBrains team. We already support lombok (paypal) but I can't wrap my head as to why they have not made Lombok (and you if you would like) as part of native IDEA.

I actually started using IntelliJ 2019.3.5 back again since I can't work without Lombok in our company projects and all other solutions for the 2020 version that were suggested didn't solve it for me.

The plugin works fine for 2020.1, it only breaks with 2020.2. Soon we'll have 2020.2.1 which will probably fix this.

@boubaca
Copy link

boubaca commented Aug 20, 2020

so lombok can no longer now work on recent Idea ? any idea when this can move on ?

@shepherdjerred
Copy link

so lombok can no longer now work on recent Idea ? any idea when this can move on ?

See: #860 (comment)

The .jar on this comment works for me: #840 (comment)

@boubaca
Copy link

boubaca commented Aug 20, 2020

so lombok can no longer now work on recent Idea ? any idea when this can move on ?

See: #860 (comment)

The .jar on this comment works for me: #840 (comment)

thanks Sir - will try that and see meanwhile

This was referenced Aug 20, 2020
mplushnikov added a commit that referenced this issue Aug 20, 2020
@mplushnikov
Copy link
Owner

IntelliJ IDEA 2020.2.1 RC Build #IC-202.6948.36, built on August 18, 2020 is available and it looks like lombok plugin is working again!

@firefinchdev
Copy link

https://www.jetbrains.com/idea/download
Latest release details:
Version: 2020.2.1
Build: 202.6948.69
25 August 2020

2020.2.1 was released just 2 days back. Is it working now? Please someone confirm.

@valdemarjuniorr
Copy link

https://www.jetbrains.com/idea/download
Latest release details:
Version: 2020.2.1
Build: 202.6948.69
25 August 2020

2020.2.1 was released just 2 days back. Is it working now? Please someone confirm.

It's working for me since Version: 2020.2.1RC. It's seems ok now 🙏

@firefinchdev
Copy link

@valdemarjuniorr thanks for the quick reply. Will update now.

SergeyZh pushed a commit to JetBrains/intellij-community that referenced this issue Oct 9, 2020
)

* Consider navigation element in PSI equality checks

This seems to solve issues related to psi becoming outdated.
Extension of comment by ajchun:
mplushnikov/lombok-intellij-plugin#840 (comment)

Covers issues: #821, #827, #829, #840, #842, #844, #846, #850, #853, #854, #855, #857

* Remove debug logging related to equality of PsiElements

GitOrigin-RevId: e9ad9801b15dc91b872b14add012a9261033fbc7
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.