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

[BUG] [Regression] NetBeans integration broken in 1.18.16 #2612

Closed
lprimak opened this issue Oct 15, 2020 · 44 comments
Closed

[BUG] [Regression] NetBeans integration broken in 1.18.16 #2612

lprimak opened this issue Oct 15, 2020 · 44 comments
Labels
parked Without further feedback this bug cannot be processed. If no feedback is provided, we close these.

Comments

@lprimak
Copy link

lprimak commented Oct 15, 2020

Describe the bug
NetBeans "default" integration fails to process Lombok annotations,
resulting in IDE errors in Lombok projects

To Reproduce
Load a Lombok project into NetBeans IDE and see that it has errors

Expected behavior
Project is error-free

Version info (please complete the following information):
Lombok 1.18.16 and 1.18.14
MacOS, Java 8 (latest)
NetBeans 12 with the latest updates

Additional context
Just upgraded to .16 from .12 and seeing this error

@rspilker
Copy link
Collaborator

I understand you have errors in your code. But I'm not sure if you mean that Lombok silently didn't work, and therefore you have compiler errors since the getters were not generated, or if you suddenly get errors from Lombok code.

Do you have exceptions that occurred?

@rspilker rspilker added the parked Without further feedback this bug cannot be processed. If no feedback is provided, we close these. label Oct 15, 2020
@lprimak
Copy link
Author

lprimak commented Oct 15, 2020

It looks like NetBeans either fails or not invoking Lombok starting in .14 version.
Because of that, the project is full of errors because none of the Lombok features are invoked anymore.
The code is error-free when compiled in Maven. The errors only show in NetBeans because
the new version of Lombok no longer works nicely with NetBeans 12 when upgrading to version .14

@lprimak
Copy link
Author

lprimak commented Oct 16, 2020

Screen Shot 2020-10-15 at 8 06 27 PM

In the screenshot above, you can see the errors,
and NetBeans not finding a @Builder-generated code from Lombok,
when everything worked correctly in the .12 version

@lprimak
Copy link
Author

lprimak commented Oct 16, 2020

Is the above clear? I feel like @rspilker you didn't understand the problem
thanks for checking!

@lprimak
Copy link
Author

lprimak commented Oct 16, 2020

Screen Shot 2020-10-15 at 8 19 46 PM

Screenshot above is from the .12 version of Lombok with the same project and the same setup.
Once again, maven compiles the project just fine under both .12 and .14 versions barring changes related to #2610

@asbachb
Copy link

asbachb commented Oct 16, 2020

I guess I'm running into a similar issue but with @Setter annotation. The internal NetBeans (12.1) compiler crashes with the new version:

java.lang.AssertionError
	at com.sun.tools.javac.util.Assert.error(Assert.java:155)
	at com.sun.tools.javac.util.Assert.check(Assert.java:46)
	at com.sun.tools.javac.util.Bits.incl(Bits.java:200)
	at com.sun.tools.javac.comp.Flow$AssignAnalyzer.initParam(Flow.java:2183)
	at com.sun.tools.javac.comp.Flow$AssignAnalyzer.visitMethodDef(Flow.java:2110)
	at com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:889)
	at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:49)
	at com.sun.tools.javac.comp.Flow$BaseAnalyzer.scan(Flow.java:456)
	at com.sun.tools.javac.comp.Flow$AssignAnalyzer.scan(Flow.java:1679)
	at com.sun.tools.javac.comp.Flow$AssignAnalyzer.visitClassDef(Flow.java:2052)
	at com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:790)
	at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:49)
	at com.sun.tools.javac.comp.Flow$BaseAnalyzer.scan(Flow.java:456)
	at com.sun.tools.javac.comp.Flow$AssignAnalyzer.scan(Flow.java:1679)
	at com.sun.tools.javac.comp.Flow$AssignAnalyzer.analyzeTree(Flow.java:2815)
	at com.sun.tools.javac.comp.Flow$AssignAnalyzer.analyzeTree(Flow.java:2797)
	at com.sun.tools.javac.comp.Flow.analyzeTree(Flow.java:219)
	at com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1499)
	at com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1473)
	at com.sun.tools.javac.api.JavacTaskImpl$1.process(JavacTaskImpl.java:504)
	at com.sun.tools.javac.api.JavacTaskImpl$Filter.run(JavacTaskImpl.java:651)
	at com.sun.tools.javac.api.JavacTaskImpl.analyze(JavacTaskImpl.java:507)
[catch] at org.netbeans.modules.java.source.nbjavac.indexing.MultiPassCompileWorker.compile(MultiPassCompileWorker.java:261)
	at org.netbeans.modules.java.source.indexing.JavaCustomIndexer.index(JavaCustomIndexer.java:361)
	at org.netbeans.modules.parsing.spi.indexing.Indexable$MyAccessor$2.run(Indexable.java:138)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runIndexer(RepositoryUpdater.java:275)
	at org.netbeans.modules.parsing.spi.indexing.Indexable$MyAccessor.index(Indexable.java:136)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.doIndex(RepositoryUpdater.java:2750)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.access$800(RepositoryUpdater.java:2154)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work$1.run(RepositoryUpdater.java:2636)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work$1.run(RepositoryUpdater.java:2634)
	at org.netbeans.modules.parsing.impl.indexing.errors.TaskCache.refreshTransaction(TaskCache.java:540)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.index(RepositoryUpdater.java:2634)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work$3.call(RepositoryUpdater.java:3300)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work$3.call(RepositoryUpdater.java:3255)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$4.run(RepositoryUpdater.java:2127)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:279)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runInContext(RepositoryUpdater.java:2123)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runInContext(RepositoryUpdater.java:2104)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.access$1500(RepositoryUpdater.java:136)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.scanFiles(RepositoryUpdater.java:3255)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$FileListWork.getDone(RepositoryUpdater.java:3785)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.doTheWork(RepositoryUpdater.java:3420)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task._run(RepositoryUpdater.java:6183)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task.access$4300(RepositoryUpdater.java:5834)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$2$1.run(RepositoryUpdater.java:6099)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:279)
	at org.netbeans.modules.parsing.impl.RunWhenScanFinishedSupport.performScan(RunWhenScanFinishedSupport.java:83)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$2.call(RepositoryUpdater.java:6095)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$2.call(RepositoryUpdater.java:6091)
	at org.netbeans.modules.masterfs.filebasedfs.utils.FileChangedManager.priorityIO(FileChangedManager.java:153)
	at org.netbeans.modules.masterfs.providers.ProvidedExtensions.priorityIO(ProvidedExtensions.java:335)
	at org.netbeans.modules.parsing.nb.DataObjectEnvFactory.runPriorityIO(DataObjectEnvFactory.java:118)
	at org.netbeans.modules.parsing.impl.Utilities.runPriorityIO(Utilities.java:67)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task.run(RepositoryUpdater.java:6091)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1418)
	at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:278)
	at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2033)

@sephiroth-j
Copy link

same here with NetBeans 12.1 and Lombok 1.18.16 ... same project, simply getter/setter/data annotations, the only change was to update Lombok from 1.18.12 to 1.18.16.

@lprimak lprimak changed the title [BUG] [Regression] NetBeans integration broken in 1.18.14 [BUG] [Regression] NetBeans integration broken in 1.18.16 Oct 19, 2020
@lprimak
Copy link
Author

lprimak commented Oct 19, 2020

Confirmed. Same issue with 1.18.16

@Rawi01
Copy link
Collaborator

Rawi01 commented Oct 19, 2020

I just tried this using the latest netbeans and lombok version and a super simple example and it works as expected.
img
Can you share a broken code snippet/project?

@asbachb
Copy link

asbachb commented Oct 19, 2020

@Rawi01 I guess you need to ensure that you installed and activated "The nb-javac java editing support library" and compile on save is enabled for your project.

@Rawi01
Copy link
Collaborator

Rawi01 commented Oct 19, 2020

@asbachb That was the information I was missing, thanks. It should be possible to debug it now.

@lprimak
Copy link
Author

lprimak commented Oct 19, 2020

Also, if you need a project, you can use this: https://github.com/flowlogix/flowlogix
and change lombok version in https://github.com/flowlogix/flowlogix/blob/master/flowlogix-bom/pom.xml

@Rawi01
Copy link
Collaborator

Rawi01 commented Oct 21, 2020

@asbachb Your problem should be fixed by the above PR
@lprimak @sephiroth-j I do not know if your problem is the same or not as you have not shared an error message/stacktrace. Can you try if my fix also solves your issue?

@asbachb
Copy link

asbachb commented Oct 21, 2020

@Rawi01 Do you have a precompiled version you can share? I can verify it within some other bigger non public projects.

@Rawi01
Copy link
Collaborator

Rawi01 commented Oct 21, 2020

@asbachb Sure lombok.zip

@sephiroth-j
Copy link

Thanks, I will try it out tomorrow.

@sephiroth-j
Copy link

@Rawi01 it is better than before. The class is usable now and can be compiled. But it still has that red exclamation mark saying "Error parsing file". The error mark is shown even when only @RequiredArgsConstructor is used.

@RequiredArgsConstructor
class Foo {
	private final String bar;
}

Tested using Java 11.0.8 for Netbeans and the project.

@sephiroth-j
Copy link

sephiroth-j commented Oct 22, 2020

It looks like Netbeans uses two constructors of com.sun.tools.javac.code.Symbol.VarSymbol.

The one with 4 arguments as seen here https://github.com/rzwitserloot/lombok/blob/eb78f5c7665833c8e7dedce75fbe102774e370ae/src/stubs/com/sun/tools/javac/code/Symbol.java#L65

But also one with just 3 arguments here and here. The one at line 258 would be the one which would be used for setter and constructors as those methods are of VOID-type I guess.

Could this be the cause for the remaining parsing error?

Rawi01 added a commit to Rawi01/lombok that referenced this issue Oct 23, 2020
@Rawi01
Copy link
Collaborator

Rawi01 commented Oct 23, 2020

@sephiroth-j Thanks for testing it, this problem only occurs if the field is static, thats why I missed it. I fixed it and compiled a new version lombok.zip

@asbachb
Copy link

asbachb commented Oct 23, 2020

@Rawi01 For me mostly error are gone with this release. Only @Data annotations are producing errors:

import lombok.Data;

@Data
public class Clazz {

  private final String a;

  private final String b;

  private final String c;

  private final String d;
}

@lprimak
Copy link
Author

lprimak commented Oct 24, 2020

I am getting issues with @Builder, @SuperBuilder and @Data
as well with the above lombok.zip:

java.lang.AssertionError
	at com.sun.tools.javac.code.Type.asMethodType(Type.java:665)
	at com.sun.tools.javac.code.TypeAnnotations$TypeAnnotationPositions.separateAnnotationsKinds(TypeAnnotations.java:366)
	at com.sun.tools.javac.code.TypeAnnotations$TypeAnnotationPositions.visitMethodDef(TypeAnnotations.java:1171)
	at com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:882)
	at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:49)
	at com.sun.tools.javac.code.TypeAnnotations$TypeAnnotationPositions.scan(TypeAnnotations.java:284)
	at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:57)
	at com.sun.tools.javac.code.TypeAnnotations$TypeAnnotationPositions.visitClassDef(TypeAnnotations.java:1122)
	at com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:788)
	at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:49)
	at com.sun.tools.javac.code.TypeAnnotations$TypeAnnotationPositions.scan(TypeAnnotations.java:284)
	at com.sun.tools.javac.code.TypeAnnotations.lambda$organizeTypeAnnotationsSignatures$0(TypeAnnotations.java:123)
	at com.sun.tools.javac.comp.Annotate.flush(Annotate.java:197)
	at com.sun.tools.javac.comp.Annotate.unblockAnnotations(Annotate.java:144)
	at com.sun.tools.javac.comp.Annotate.enterDone(Annotate.java:157)
	at com.sun.tools.javac.main.JavaCompiler.enterDone(JavaCompiler.java:1862)
	at com.sun.tools.javac.main.JavaCompiler.enterTrees(JavaCompiler.java:1149)
	at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.enterTrees(JavacProcessingEnvironment.java:1277)
	at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.<init>(JavacProcessingEnvironment.java:1163)
	at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.next(JavacProcessingEnvironment.java:1183)
	at com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1390)
	at com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1353)
	at com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1243)
	at com.sun.tools.javac.api.JavacTaskImpl.enter(JavacTaskImpl.java:404)
	at com.sun.tools.javac.api.JavacTaskImpl.enterTrees(JavacTaskImpl.java:451)
[catch] at org.netbeans.modules.java.source.nbjavac.indexing.MultiPassCompileWorker.compile(MultiPassCompileWorker.java:204)
	at org.netbeans.modules.java.source.indexing.JavaCustomIndexer.index(JavaCustomIndexer.java:361)
	at org.netbeans.modules.parsing.spi.indexing.Indexable$MyAccessor$2.run(Indexable.java:138)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runIndexer(RepositoryUpdater.java:275)
	at org.netbeans.modules.parsing.spi.indexing.Indexable$MyAccessor.index(Indexable.java:136)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.doIndex(RepositoryUpdater.java:2750)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.access$800(RepositoryUpdater.java:2154)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work$1.run(RepositoryUpdater.java:2636)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work$1.run(RepositoryUpdater.java:2634)
	at org.netbeans.modules.parsing.impl.indexing.errors.TaskCache.refreshTransaction(TaskCache.java:540)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.index(RepositoryUpdater.java:2634)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractRootsWork$4.call(RepositoryUpdater.java:5714)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractRootsWork$4.call(RepositoryUpdater.java:5622)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$4.run(RepositoryUpdater.java:2127)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:279)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runInContext(RepositoryUpdater.java:2123)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runInContext(RepositoryUpdater.java:2104)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.access$1500(RepositoryUpdater.java:136)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractRootsWork.scanSource(RepositoryUpdater.java:5749)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractRootsWork.scanSources(RepositoryUpdater.java:5419)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$RootsWork.getDone(RepositoryUpdater.java:5038)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$InitialRootsWork.getDone(RepositoryUpdater.java:5821)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.doTheWork(RepositoryUpdater.java:3420)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task._run(RepositoryUpdater.java:6183)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task.access$4300(RepositoryUpdater.java:5834)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$2$1.run(RepositoryUpdater.java:6099)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:279)
	at org.netbeans.modules.parsing.impl.RunWhenScanFinishedSupport.performScan(RunWhenScanFinishedSupport.java:83)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$2.call(RepositoryUpdater.java:6095)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$2.call(RepositoryUpdater.java:6091)
	at org.netbeans.modules.masterfs.filebasedfs.utils.FileChangedManager.priorityIO(FileChangedManager.java:153)
	at org.netbeans.modules.masterfs.providers.ProvidedExtensions.priorityIO(ProvidedExtensions.java:335)
	at org.netbeans.modules.parsing.nb.DataObjectEnvFactory.runPriorityIO(DataObjectEnvFactory.java:118)
	at org.netbeans.modules.parsing.impl.Utilities.runPriorityIO(Utilities.java:67)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task.run(RepositoryUpdater.java:6091)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1418)
	at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:278)
	at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2033)

Rawi01 added a commit to Rawi01/lombok that referenced this issue Oct 25, 2020
@Rawi01
Copy link
Collaborator

Rawi01 commented Oct 25, 2020

@asbachb Thanks for testing, fixed that problem too.
@lprimak A stacktrace is always useful but a stacktrace + a code snippet that I can use to reproduce it would be even better.

New test version: lombok.zip

This bug is quite hard to fix because I can not reproduce this in a unit test. The problem is that the latest lombok version now shares method parameter names with other annotation processors. Turining of this feature in NetBeans should solve this issue but might lead to some inconsistency.

@lprimak
Copy link
Author

lprimak commented Oct 25, 2020

@Rawi01 Thanks for taking a look again. I am working with NetBeans 12 and https://github.com/flowlogix/flowlogix/tree/master/jakarta-ee
so you can just clone that and open it and it's four sub-projects in NetBeans and see if they have any issues

@lprimak
Copy link
Author

lprimak commented Oct 25, 2020

Just tested again with the new test version, unfortunately exception still occurs.

Looks like @Data and @Builder / @SuperBuilder cause issues
Specifically the projects not compiling are https://github.com/flowlogix/flowlogix/tree/master/jakarta-ee/flowlogix-jee and https://github.com/flowlogix/flowlogix/tree/master/jakarta-ee/flowlogix-datamodel

java.lang.AssertionError
	at com.sun.tools.javac.code.Type.asMethodType(Type.java:665)
	at com.sun.tools.javac.code.TypeAnnotations$TypeAnnotationPositions.separateAnnotationsKinds(TypeAnnotations.java:366)
	at com.sun.tools.javac.code.TypeAnnotations$TypeAnnotationPositions.visitMethodDef(TypeAnnotations.java:1171)
	at com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:882)
	at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:49)
	at com.sun.tools.javac.code.TypeAnnotations$TypeAnnotationPositions.scan(TypeAnnotations.java:284)
	at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:57)
	at com.sun.tools.javac.code.TypeAnnotations$TypeAnnotationPositions.visitClassDef(TypeAnnotations.java:1122)
	at com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:788)
	at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:49)
	at com.sun.tools.javac.code.TypeAnnotations$TypeAnnotationPositions.scan(TypeAnnotations.java:284)
	at com.sun.tools.javac.code.TypeAnnotations.lambda$organizeTypeAnnotationsSignatures$0(TypeAnnotations.java:123)
	at com.sun.tools.javac.comp.Annotate.flush(Annotate.java:197)
	at com.sun.tools.javac.comp.Annotate.unblockAnnotations(Annotate.java:144)
	at com.sun.tools.javac.comp.Annotate.enterDone(Annotate.java:157)
	at com.sun.tools.javac.main.JavaCompiler.enterDone(JavaCompiler.java:1862)
	at com.sun.tools.javac.main.JavaCompiler.enterTrees(JavaCompiler.java:1149)
	at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.enterTrees(JavacProcessingEnvironment.java:1277)
	at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.<init>(JavacProcessingEnvironment.java:1163)
	at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.next(JavacProcessingEnvironment.java:1183)
	at com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1390)
	at com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1353)
	at com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1243)
	at com.sun.tools.javac.api.JavacTaskImpl.enter(JavacTaskImpl.java:404)
	at com.sun.tools.javac.api.JavacTaskImpl.enterTrees(JavacTaskImpl.java:451)
[catch] at org.netbeans.modules.java.source.nbjavac.indexing.MultiPassCompileWorker.compile(MultiPassCompileWorker.java:204)
	at org.netbeans.modules.java.source.indexing.JavaCustomIndexer.index(JavaCustomIndexer.java:361)
	at org.netbeans.modules.parsing.spi.indexing.Indexable$MyAccessor$2.run(Indexable.java:138)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runIndexer(RepositoryUpdater.java:275)
	at org.netbeans.modules.parsing.spi.indexing.Indexable$MyAccessor.index(Indexable.java:136)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.doIndex(RepositoryUpdater.java:2750)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.access$800(RepositoryUpdater.java:2154)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work$1.run(RepositoryUpdater.java:2636)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work$1.run(RepositoryUpdater.java:2634)
	at org.netbeans.modules.parsing.impl.indexing.errors.TaskCache.refreshTransaction(TaskCache.java:540)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.index(RepositoryUpdater.java:2634)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractRootsWork$4.call(RepositoryUpdater.java:5714)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractRootsWork$4.call(RepositoryUpdater.java:5622)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$4.run(RepositoryUpdater.java:2127)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:279)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runInContext(RepositoryUpdater.java:2123)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runInContext(RepositoryUpdater.java:2104)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.access$1500(RepositoryUpdater.java:136)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractRootsWork.scanSource(RepositoryUpdater.java:5749)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractRootsWork.scanSources(RepositoryUpdater.java:5419)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$RootsWork.getDone(RepositoryUpdater.java:5038)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.doTheWork(RepositoryUpdater.java:3420)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task._run(RepositoryUpdater.java:6183)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task.access$4300(RepositoryUpdater.java:5834)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$2$1.run(RepositoryUpdater.java:6099)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:279)
	at org.netbeans.modules.parsing.impl.RunWhenScanFinishedSupport.performScan(RunWhenScanFinishedSupport.java:83)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$2.call(RepositoryUpdater.java:6095)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$2.call(RepositoryUpdater.java:6091)
	at org.netbeans.modules.masterfs.filebasedfs.utils.FileChangedManager.priorityIO(FileChangedManager.java:153)
	at org.netbeans.modules.masterfs.providers.ProvidedExtensions.priorityIO(ProvidedExtensions.java:335)
	at org.netbeans.modules.parsing.nb.DataObjectEnvFactory.runPriorityIO(DataObjectEnvFactory.java:118)
	at org.netbeans.modules.parsing.impl.Utilities.runPriorityIO(Utilities.java:67)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task.run(RepositoryUpdater.java:6091)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1418)
	at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:278)
	at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2033)

@lprimak
Copy link
Author

lprimak commented Oct 26, 2020

That's because it's using Lombok 1.18.12, if you update flowlogix-bom/pom.xml with the latest version and restart NetBeans, the problems will show up.

@lprimak I can open this project using NetBeans and there are no errors. If there still is something that does not work it would be really useful if you can share minimal code snippets or a small sample project that only contains broken stuff.

@Rawi01
Copy link
Collaborator

Rawi01 commented Oct 27, 2020

@lprimak Of course I have changed the version and fixed the @Delegate issue.

@lprimak
Copy link
Author

lprimak commented Oct 27, 2020

@Rawi01 Is this with the lombok.zip from above? Or is there another, newer one I should try?

@Rawi01
Copy link
Collaborator

Rawi01 commented Oct 27, 2020

@lprimak This one: #2612 (comment)

@lprimak
Copy link
Author

lprimak commented Oct 27, 2020

@Rawi01 well, that was embarrassing,
I forgot to update the version from #2612 (comment) to the latest internally.

I can confirm that the new version in the above comment works correctly!
Thank you!

@lprimak
Copy link
Author

lprimak commented Oct 27, 2020

Fixed in Lombok > 1.18.16

@lprimak lprimak closed this as completed Oct 27, 2020
@lprimak
Copy link
Author

lprimak commented Oct 27, 2020

fixed by PR #2621

@lprimak lprimak reopened this Oct 27, 2020
@sephiroth-j
Copy link

@Rawi01 well, that was embarrassing,
I forgot to update the version from #2612 (comment) to the latest internally.

I can confirm that the new version in the above comment works correctly!
Thank you!

I can confirm this as well.

@sysmat
Copy link

sysmat commented Nov 10, 2020

Here is the same NB 12.1, The nb-javac java editing support library, lombok 1.18.16 it is still broken

And NB error:

java.lang.AssertionError
	at com.sun.tools.javac.util.Assert.error(Assert.java:155)
	at com.sun.tools.javac.util.Assert.check(Assert.java:46)
	at com.sun.tools.javac.util.Bits.incl(Bits.java:200)
	at com.sun.tools.javac.comp.Flow$AssignAnalyzer.initParam(Flow.java:2183)
	at com.sun.tools.javac.comp.Flow$AssignAnalyzer.visitMethodDef(Flow.java:2110)
	at com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:889)
	at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:49)
	at com.sun.tools.javac.comp.Flow$BaseAnalyzer.scan(Flow.java:456)
	at com.sun.tools.javac.comp.Flow$AssignAnalyzer.scan(Flow.java:1679)
	at com.sun.tools.javac.comp.Flow$AssignAnalyzer.visitClassDef(Flow.java:2052)
	at com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:790)
	at com.sun.tools.javac.tree.TreeScanner.scan(TreeScanner.java:49)
	at com.sun.tools.javac.comp.Flow$BaseAnalyzer.scan(Flow.java:456)
	at com.sun.tools.javac.comp.Flow$AssignAnalyzer.scan(Flow.java:1679)
	at com.sun.tools.javac.comp.Flow$AssignAnalyzer.analyzeTree(Flow.java:2815)
	at com.sun.tools.javac.comp.Flow$AssignAnalyzer.analyzeTree(Flow.java:2797)
	at com.sun.tools.javac.comp.Flow.analyzeTree(Flow.java:219)
	at com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1499)
	at com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1473)
	at com.sun.tools.javac.api.JavacTaskImpl$1.process(JavacTaskImpl.java:504)
	at com.sun.tools.javac.api.JavacTaskImpl$Filter.run(JavacTaskImpl.java:651)
	at com.sun.tools.javac.api.JavacTaskImpl.analyze(JavacTaskImpl.java:507)
[catch] at org.netbeans.modules.java.source.nbjavac.indexing.MultiPassCompileWorker.compile(MultiPassCompileWorker.java:261)
	at org.netbeans.modules.java.source.indexing.JavaCustomIndexer.index(JavaCustomIndexer.java:361)
	at org.netbeans.modules.parsing.spi.indexing.Indexable$MyAccessor$2.run(Indexable.java:138)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runIndexer(RepositoryUpdater.java:275)
	at org.netbeans.modules.parsing.spi.indexing.Indexable$MyAccessor.index(Indexable.java:136)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.doIndex(RepositoryUpdater.java:2750)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.access$800(RepositoryUpdater.java:2154)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work$1.run(RepositoryUpdater.java:2636)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work$1.run(RepositoryUpdater.java:2634)
	at org.netbeans.modules.parsing.impl.indexing.errors.TaskCache.refreshTransaction(TaskCache.java:540)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.index(RepositoryUpdater.java:2634)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractRootsWork$4.call(RepositoryUpdater.java:5714)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractRootsWork$4.call(RepositoryUpdater.java:5622)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$4.run(RepositoryUpdater.java:2127)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:279)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runInContext(RepositoryUpdater.java:2123)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runInContext(RepositoryUpdater.java:2104)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.access$1500(RepositoryUpdater.java:136)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractRootsWork.scanSource(RepositoryUpdater.java:5749)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractRootsWork.scanSources(RepositoryUpdater.java:5419)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$RootsWork.getDone(RepositoryUpdater.java:5038)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.doTheWork(RepositoryUpdater.java:3420)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task._run(RepositoryUpdater.java:6183)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task.access$4300(RepositoryUpdater.java:5834)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$2$1.run(RepositoryUpdater.java:6099)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:279)
	at org.netbeans.modules.parsing.impl.RunWhenScanFinishedSupport.performScan(RunWhenScanFinishedSupport.java:83)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$2.call(RepositoryUpdater.java:6095)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$2.call(RepositoryUpdater.java:6091)
	at org.netbeans.modules.masterfs.filebasedfs.utils.FileChangedManager.priorityIO(FileChangedManager.java:153)
	at org.netbeans.modules.masterfs.providers.ProvidedExtensions.priorityIO(ProvidedExtensions.java:335)
	at org.netbeans.modules.parsing.nb.DataObjectEnvFactory.runPriorityIO(DataObjectEnvFactory.java:118)
	at org.netbeans.modules.parsing.impl.Utilities.runPriorityIO(Utilities.java:67)
	at org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task.run(RepositoryUpdater.java:6091)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1418)
	at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45)
	at org.openide.util.lookup.Lookups.executeWith(Lookups.java:278)
	at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2033)

@didiez
Copy link

didiez commented Nov 19, 2020

Here is the same NB 12.1, The nb-javac java editing support library, lombok 1.18.16 it is still broken

It seems to be fixed in edge-release (https://projectlombok.org/download-edge)

Netbeans issues related to this:

Is the any ETA for a stable version with this fix?

@lprimak
Copy link
Author

lprimak commented Nov 19, 2020

Yes, we need stable release

@rspilker
Copy link
Collaborator

rspilker commented Dec 3, 2020

We're currently working towards a new release, meaning we're not integrating risky features or pull requests. We expect a new release within a week.

@davitp
Copy link

davitp commented Jan 6, 2021

Good Day,
Can anyone explain why this issue happens? I was using Lombok 1.18.16 for some time with Netbeans 11, 12.1, 12.2 and everything was fine. Apparently, it stopped recognizing classes annotated with Lombok with the same error that is discussed here.

Any plans for a stable release including this?

@lprimak
Copy link
Author

lprimak commented Jan 25, 2021

It's been 3 months since the last release, NetBeans still broken.
It's time for another release.
Thank you @rspilker @rzwitserloot

@abbas-v1
Copy link

abbas-v1 commented May 4, 2021

I still have this issue on Netbeans 12.3 with Lombok 1.18.20

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
parked Without further feedback this bug cannot be processed. If no feedback is provided, we close these.
Projects
None yet
Development

No branches or pull requests

10 participants