You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@netbeans.apache.org by Humphrey Clerx <hc...@gmail.com> on 2020/12/11 09:35:46 UTC
NetBeans 12.x shows error badges on imports
Currently we are using NetBeans 8.2 using JDK 1.8 (AdoptOpenJDK 8u272)
under Windows 10 (and Solaris 11.3).
Our project is a NetBeans Platform Application, consisting of several
Module Suites with several Modules. Our project sets an explicit Java
Platform to use (nbjdk.active=JDK_1.8). We use Ant for building the project.
All of this works fine. But recently I tried to migrate to using NetBeans
12.2 with nb-javac installed and enabled. I installed NetBeans 12.2 and
configured it to run with JDK 11 (AdoptOpenJDK 11.0.9) as the default JDK
(by setting jdk_home in netbeans.conf).
I then ran NB12.2 without importing settings from NB8.2. Then I defined an
additional Java Platform to point to the AdoptOpenJDK 1.8 installation
folder to define the JDK_1.8 platform property.
If I then open our project and all the modules, NB12.2 starts a background
scan. During this scanning it throws numerous NPE's (almost every second).
I'll add the stacktrace at the end of this mail.
And on multiple files an "error badge" appears because it imports a class
(StringUtils) that happens to be defined in two independent modules in our
project (this is to avoid cyclic dependency and visibility between modules
needing this class).
The error badge appears on the import of StringUtils from the one module
only, not on the imports of StringUtils from the other module. The error
badge does not appear on the import in the same module where StringUtils is
defined, but it does appear on the use of StringUtils in the Unit Test
Packages in the module.
The error badge states the following:
cannot find symbol
symbol: class StringUtils
location: package common.util
When selecting the "error badge" it asks to "Change to import <package
name>.StringUtils", suggesting the other StringUtils.java class.
Note that when I use Ctrl-O to open the "Go to Type" dialog and type
StringUtils it find both instances of StringUtils (plus some additional
ones e.g. com.sun.xml.internal.ws.util.StringUtils).
I tried doing the same with completely disabling/uninstalling nb-javac and
ran 12.2 again from scratch. Doing this, the NPE's still occur, but the
"error badges" problem disappears.
I tried doing the same with installing NB 12.1 (without nb-javac). This
also stops the NPE's. Installing/enabling nb-javac brings back the "error
badges" in NB 12.1 as well though.
To me it seems nb-javac has a problem with determining visibility of
classes between modules when (multiple) classes are defined with the same
name but that live in a different package/module.
And it seems something is broken in NB12.2 with respect to the Background
scanning in that it throws NPE's all the time.
For now I'm using NB12.1 (without nb-javac) and that at least solves my
"error badge" and NPE problems, but the scanning/etc of javac as opposed to
using nb-javac seems to slow down the display of e.g. Java Hints and other
things inside the editor and/or when doing "Find Usages".
Note that I'm not having ANY of these problems with NB 8.2 (using nb-javac).
Is there anyone who can give some idea on how/why these "error badges"
appear?
And/or why NB12.2 seems to throw so many NPE's (as opposed to NB12.1)?
Greets,
Humphrey.
----- NPE stacktrace ----
java.lang.NullPointerException
at
com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:914)
at
com.sun.tools.javac.processing.JavacProcessingEnvironment.access$2500(JavacProcessingEnvironment.java:113)
at
com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1298)
at
com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1380)
at
com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1350)
at
com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1240)
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.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)
--
In the mountains of truth, you never climb in vain - Nietzsche
#-------------------------------------------------------------
\_O
,__/>
<"
'
Re: NetBeans 12.x shows error badges on imports
Posted by Jaroslav Tulach <ja...@gmail.com>.
Hello Humphrey,
report new issue with separate steps to reproduce. Cross reference the
issues. Once assigned and analysed, they may be closed as duplicates.
-jt
st 6. 1. 2021 v 12:49 odesílatel Humphrey Clerx <hc...@gmail.com> napsal:
> Hi Tulach,
>
> Hello to you too. Indeed quite a long time. We're still going strong with
> the use of the NetBeans RCP in our software.
>
> I totally agree that somewhen in the future nb-javac should converge with
> javac (or vice versa), but until then I hope we can fix nb-javac.
>
> I do hope the sample project helps in finding the problem with nb-javac. At
> first I thought it was a generic problem to do with duplicate class(es) in
> separate modules, used by other modules. But it turned out, at least in my
> case (I don't know if this is the same problem as reported by Javier
> in NETBEANS-4931) it was actually due to the particular StringUtils class
> that we were using that has some convenience lookup tables for Integer to
> String conversion. But still it's puzzling as to why nb-javac has a problem
> with this. In any case I'm glad we're able to reproduce it and that
> hopefully a fix can be found.
>
> Should I create a separate JIRA issue for this, or attach the sample
> project to NETBEANS-4931?
>
> Greets,
> Humphrey.
>
> On Tue, Jan 5, 2021 at 10:22 AM Jaroslav Tulach <jaroslav.tulach@gmail.com
> >
> wrote:
>
> > Long time no see Humphrey!
> >
> > Thanks a lot for your simplified test case. It makes sense to record it
> > into JIRA for tracking purposes.
> >
> > I talked about your problem with Jan Lahoda and we believe that the best
> > way to fix the problem is to eliminate differences between Javac and
> > NbJavac as discussed in
> >
> >
> https://lists.apache.org/thread.html/r5f210c99b0926aeaac2d0c3c419ff4b79e01f15b67c5ddcf32a51bbe%40%3Cdev.netbeans.apache.org%3E
> > that however is going to take about a year.
> >
> > Reporting JIRA issue may possibly speed resolution of the problem by
> other
> > means[1] without waiting for implementation of the "big idea".
> > -jt
> >
> > [1] by fixing the bug in current nb-javac.
> >
> > út 22. 12. 2020 v 9:16 odesílatel Humphrey Clerx <hc...@gmail.com>
> > napsal:
> >
> > > I've been able to narrow the problem down and have an example module
> > suite
> > > that shows the problem.
> > >
> > > It turned out it has nothing to do with duplicate classes being defined
> > in
> > > different modules and both being visible in other modules. The problem
> is
> > > with the one file StringUtils in one module.
> > >
> > > When opening the suite and the modules the "error badges" appear. The
> > > "error badges" also appear in the Unit Test package in the same module.
> > >
> > > This problem happens with any NetBeans 12.x when using nb-javac.
> > >
> > > The problem itself seems to be caused by the String lookup arrays
> > > OCTAL_NUMBERS and NUMBERS. If you remove these and refactor the code to
> > use
> > > Integer.toString(val), the "error badges" disappear.
> > >
> > > When deactivating and removing nb-javac, so that the JDK_1.8 javac is
> > > used, the "error badges" also don't appear (even with the lookup
> arrays).
> > >
> > > It seems nb-javac has a problem parsing/caching/... the class
> > StringUtils,
> > > such that it's no longer visible in other modules. It's cumbersome to
> > > knwo why this is happening, since nb-javac gived no logging output,
> other
> > > than several NPE's in the messages.log and the INFO log entries.
> > >
> > > INFO [org.netbeans.api.java.source.ElementHandle]: Resolved type is
> null
> > > for kind = CLASS
> > > INFO [org.netbeans.api.java.source.ElementHandle]: Cannot resolve:
> > > ElementHandle[kind=CLASS;
> > > sigs=org.nato.unclassified.mice.common.util.StringUtils ]
> > > INFO [org.netbeans.modules.java.editor.imports.ComputeImports]: Cannot
> > > resolve type element "ElementHandle[kind=CLASS;
> > > sigs=org.nato.unclassified.mice.common.util.StringUtils ]".
> > >
> > >
> > > Maybe someone can shed some light on why this is and possibly fix it
> for
> > > NB 12.3?
> > >
> > > Greets,
> > > Humphrey.
> > >
> > >
> > > On Fri, Dec 18, 2020 at 3:11 PM Humphrey Clerx <hc...@gmail.com>
> wrote:
> > >
> > >> I checked the messages.log of NetBeans 12.2 and found the following
> kind
> > >> of entries:
> > >>
> > >> INFO [org.netbeans.api.java.source.ElementHandle]: Resolved type is
> null
> > >> for kind = CLASS
> > >> INFO [org.netbeans.api.java.source.ElementHandle]: Cannot resolve:
> > >> ElementHandle[kind=CLASS;
> > >> sigs=org.nato.unclassified.mice.common.util.StringUtils ]
> > >> INFO [org.netbeans.modules.java.editor.imports.ComputeImports]: Cannot
> > >> resolve type element "ElementHandle[kind=CLASS;
> > >> sigs=org.nato.unclassified.mice.common.util.StringUtils ]".
> > >>
> > >> And the log is also full of the following entries:
> > >>
> > >> java.lang.NullPointerException
> > >> WARNING [org.netbeans.modules.java.source.indexing.JavaIndex]:
> > >> MultiPassCompileWorker caused an exception
> > >>
> > >>
> > >>
> > >>
> > >> On Fri, Dec 11, 2020 at 2:21 PM Javier Ortiz Bultron <
> > >> javier.ortiz.78@gmail.com> wrote:
> > >>
> > >>> Yup, exactly the same behavior I reported. Maybe you can add more
> > details
> > >>> there.
> > >>>
> > >>> https://issues.apache.org/jira/browse/NETBEANS-4931
> > >>>
> > >>>
> > >>>
> > >>> On Fri, Dec 11, 2020 at 3:34 AM Humphrey Clerx <hc...@gmail.com>
> > wrote:
> > >>>
> > >>> > Currently we are using NetBeans 8.2 using JDK 1.8 (AdoptOpenJDK
> > 8u272)
> > >>> > under Windows 10 (and Solaris 11.3).
> > >>> >
> > >>> > Our project is a NetBeans Platform Application, consisting of
> several
> > >>> > Module Suites with several Modules. Our project sets an explicit
> Java
> > >>> > Platform to use (nbjdk.active=JDK_1.8). We use Ant for building the
> > >>> > project.
> > >>> >
> > >>> > All of this works fine. But recently I tried to migrate to using
> > >>> NetBeans
> > >>> > 12.2 with nb-javac installed and enabled. I installed NetBeans 12.2
> > and
> > >>> > configured it to run with JDK 11 (AdoptOpenJDK 11.0.9) as the
> default
> > >>> JDK
> > >>> > (by setting jdk_home in netbeans.conf).
> > >>> >
> > >>> > I then ran NB12.2 without importing settings from NB8.2. Then I
> > >>> defined an
> > >>> > additional Java Platform to point to the AdoptOpenJDK 1.8
> > installation
> > >>> > folder to define the JDK_1.8 platform property.
> > >>> >
> > >>> > If I then open our project and all the modules, NB12.2 starts a
> > >>> background
> > >>> > scan. During this scanning it throws numerous NPE's (almost every
> > >>> second).
> > >>> > I'll add the stacktrace at the end of this mail.
> > >>> >
> > >>> > And on multiple files an "error badge" appears because it imports a
> > >>> class
> > >>> > (StringUtils) that happens to be defined in two independent modules
> > in
> > >>> our
> > >>> > project (this is to avoid cyclic dependency and visibility between
> > >>> modules
> > >>> > needing this class).
> > >>> >
> > >>> > The error badge appears on the import of StringUtils from the one
> > >>> module
> > >>> > only, not on the imports of StringUtils from the other module. The
> > >>> error
> > >>> > badge does not appear on the import in the same module where
> > >>> StringUtils is
> > >>> > defined, but it does appear on the use of StringUtils in the Unit
> > Test
> > >>> > Packages in the module.
> > >>> >
> > >>> > The error badge states the following:
> > >>> >
> > >>> > cannot find symbol
> > >>> > symbol: class StringUtils
> > >>> > location: package common.util
> > >>> >
> > >>> >
> > >>> > When selecting the "error badge" it asks to "Change to import
> > <package
> > >>> > name>.StringUtils", suggesting the other StringUtils.java class.
> > >>> >
> > >>> > Note that when I use Ctrl-O to open the "Go to Type" dialog and
> type
> > >>> > StringUtils it find both instances of StringUtils (plus some
> > additional
> > >>> > ones e.g. com.sun.xml.internal.ws.util.StringUtils).
> > >>> >
> > >>> > I tried doing the same with completely disabling/uninstalling
> > nb-javac
> > >>> and
> > >>> > ran 12.2 again from scratch. Doing this, the NPE's still occur, but
> > the
> > >>> > "error badges" problem disappears.
> > >>> >
> > >>> > I tried doing the same with installing NB 12.1 (without nb-javac).
> > This
> > >>> > also stops the NPE's. Installing/enabling nb-javac brings back the
> > >>> "error
> > >>> > badges" in NB 12.1 as well though.
> > >>> >
> > >>> > To me it seems nb-javac has a problem with determining visibility
> of
> > >>> > classes between modules when (multiple) classes are defined with
> the
> > >>> same
> > >>> > name but that live in a different package/module.
> > >>> >
> > >>> > And it seems something is broken in NB12.2 with respect to the
> > >>> Background
> > >>> > scanning in that it throws NPE's all the time.
> > >>> >
> > >>> > For now I'm using NB12.1 (without nb-javac) and that at least
> solves
> > my
> > >>> > "error badge" and NPE problems, but the scanning/etc of javac as
> > >>> opposed to
> > >>> > using nb-javac seems to slow down the display of e.g. Java Hints
> and
> > >>> other
> > >>> > things inside the editor and/or when doing "Find Usages".
> > >>> >
> > >>> > Note that I'm not having ANY of these problems with NB 8.2 (using
> > >>> > nb-javac).
> > >>> >
> > >>> > Is there anyone who can give some idea on how/why these "error
> > badges"
> > >>> > appear?
> > >>> >
> > >>> > And/or why NB12.2 seems to throw so many NPE's (as opposed to
> > NB12.1)?
> > >>> >
> > >>> > Greets,
> > >>> > Humphrey.
> > >>> >
> > >>> > ----- NPE stacktrace ----
> > >>> >
> > >>> > java.lang.NullPointerException
> > >>> >
> > >>> > at
> > >>> >
> > >>> >
> > >>>
> >
> com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:914)
> > >>> >
> > >>> > at
> > >>> >
> > >>> >
> > >>>
> >
> com.sun.tools.javac.processing.JavacProcessingEnvironment.access$2500(JavacProcessingEnvironment.java:113)
> > >>> >
> > >>> > at
> > >>> >
> > >>> >
> > >>>
> >
> com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1298)
> > >>> >
> > >>> > at
> > >>> >
> > >>> >
> > >>>
> >
> com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1380)
> > >>> >
> > >>> > at
> > >>> >
> > >>> >
> > >>>
> >
> com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1350)
> > >>> >
> > >>> > at
> > >>> >
> > >>> >
> > >>>
> >
> com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1240)
> > >>> >
> > >>> > 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.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)
> > >>> >
> > >>> > --
> > >>> > In the mountains of truth, you never climb in vain - Nietzsche
> > >>> > #-------------------------------------------------------------
> > >>> > \_O
> > >>> > ,__/>
> > >>> > <"
> > >>> > '
> > >>> >
> > >>>
> > >>
> > >>
> > >> --
> > >> In the mountains of truth, you never climb in vain - Nietzsche
> > >> #-------------------------------------------------------------
> > >> \_O
> > >> ,__/>
> > >> <"
> > >> '
> > >>
> > >
> > >
> > > --
> > > In the mountains of truth, you never climb in vain - Nietzsche
> > > #-------------------------------------------------------------
> > > \_O
> > > ,__/>
> > > <"
> > > '
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: dev-unsubscribe@netbeans.apache.org
> > > For additional commands, e-mail: dev-help@netbeans.apache.org
> > >
> > > For further information about the NetBeans mailing lists, visit:
> > > https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
> > >
> > >
> >
>
>
> --
> In the mountains of truth, you never climb in vain - Nietzsche
> #-------------------------------------------------------------
> \_O
> ,__/>
> <"
> '
>
RE: NetBeans 12.x shows error badges on imports
Posted by Arvind Aprameya <ar...@oracle.com>.
Hi Humphrey,
Let me please check what the issue in nb-javac could be.
regards,
Arvind
-----Original Message-----
From: Humphrey Clerx <hc...@gmail.com>
Sent: Wednesday, January 6, 2021 5:19 PM
To: dev@netbeans.apache.org
Subject: Re: NetBeans 12.x shows error badges on imports
Hi Tulach,
Hello to you too. Indeed quite a long time. We're still going strong with the use of the NetBeans RCP in our software.
I totally agree that somewhen in the future nb-javac should converge with javac (or vice versa), but until then I hope we can fix nb-javac.
I do hope the sample project helps in finding the problem with nb-javac. At first I thought it was a generic problem to do with duplicate class(es) in separate modules, used by other modules. But it turned out, at least in my case (I don't know if this is the same problem as reported by Javier in NETBEANS-4931) it was actually due to the particular StringUtils class that we were using that has some convenience lookup tables for Integer to String conversion. But still it's puzzling as to why nb-javac has a problem with this. In any case I'm glad we're able to reproduce it and that hopefully a fix can be found.
Should I create a separate JIRA issue for this, or attach the sample project to NETBEANS-4931?
Greets,
Humphrey.
On Tue, Jan 5, 2021 at 10:22 AM Jaroslav Tulach <ja...@gmail.com>
wrote:
> Long time no see Humphrey!
>
> Thanks a lot for your simplified test case. It makes sense to record
> it into JIRA for tracking purposes.
>
> I talked about your problem with Jan Lahoda and we believe that the
> best way to fix the problem is to eliminate differences between Javac
> and NbJavac as discussed in
>
> https://urldefense.com/v3/__https://lists.apache.org/thread.html/r5f21
> 0c99b0926aeaac2d0c3c419ff4b79e01f15b67c5ddcf32a51bbe*40*3Cdev.netbeans
> .apache.org*3E__;JSUl!!GqivPVa7Brio!KovAgWF1h7iV8bk-UI-VPrJsig_4sSLr_0
> _H_m7L3zwewyclaHdaDc6Y4LIEKBmFCV9Q$
> that however is going to take about a year.
>
> Reporting JIRA issue may possibly speed resolution of the problem by
> other means[1] without waiting for implementation of the "big idea".
> -jt
>
> [1] by fixing the bug in current nb-javac.
>
> út 22. 12. 2020 v 9:16 odesílatel Humphrey Clerx <hc...@gmail.com>
> napsal:
>
> > I've been able to narrow the problem down and have an example module
> suite
> > that shows the problem.
> >
> > It turned out it has nothing to do with duplicate classes being
> > defined
> in
> > different modules and both being visible in other modules. The
> > problem is with the one file StringUtils in one module.
> >
> > When opening the suite and the modules the "error badges" appear.
> > The "error badges" also appear in the Unit Test package in the same module.
> >
> > This problem happens with any NetBeans 12.x when using nb-javac.
> >
> > The problem itself seems to be caused by the String lookup arrays
> > OCTAL_NUMBERS and NUMBERS. If you remove these and refactor the code
> > to
> use
> > Integer.toString(val), the "error badges" disappear.
> >
> > When deactivating and removing nb-javac, so that the JDK_1.8 javac
> > is used, the "error badges" also don't appear (even with the lookup arrays).
> >
> > It seems nb-javac has a problem parsing/caching/... the class
> StringUtils,
> > such that it's no longer visible in other modules. It's cumbersome
> > to knwo why this is happening, since nb-javac gived no logging
> > output, other than several NPE's in the messages.log and the INFO log entries.
> >
> > INFO [org.netbeans.api.java.source.ElementHandle]: Resolved type is
> > null for kind = CLASS INFO
> > [org.netbeans.api.java.source.ElementHandle]: Cannot resolve:
> > ElementHandle[kind=CLASS;
> > sigs=org.nato.unclassified.mice.common.util.StringUtils ] INFO
> > [org.netbeans.modules.java.editor.imports.ComputeImports]: Cannot
> > resolve type element "ElementHandle[kind=CLASS;
> > sigs=org.nato.unclassified.mice.common.util.StringUtils ]".
> >
> >
> > Maybe someone can shed some light on why this is and possibly fix it
> > for NB 12.3?
> >
> > Greets,
> > Humphrey.
> >
> >
> > On Fri, Dec 18, 2020 at 3:11 PM Humphrey Clerx <hc...@gmail.com> wrote:
> >
> >> I checked the messages.log of NetBeans 12.2 and found the following
> >> kind of entries:
> >>
> >> INFO [org.netbeans.api.java.source.ElementHandle]: Resolved type is
> >> null for kind = CLASS INFO
> >> [org.netbeans.api.java.source.ElementHandle]: Cannot resolve:
> >> ElementHandle[kind=CLASS;
> >> sigs=org.nato.unclassified.mice.common.util.StringUtils ] INFO
> >> [org.netbeans.modules.java.editor.imports.ComputeImports]: Cannot
> >> resolve type element "ElementHandle[kind=CLASS;
> >> sigs=org.nato.unclassified.mice.common.util.StringUtils ]".
> >>
> >> And the log is also full of the following entries:
> >>
> >> java.lang.NullPointerException
> >> WARNING [org.netbeans.modules.java.source.indexing.JavaIndex]:
> >> MultiPassCompileWorker caused an exception
> >>
> >>
> >>
> >>
> >> On Fri, Dec 11, 2020 at 2:21 PM Javier Ortiz Bultron <
> >> javier.ortiz.78@gmail.com> wrote:
> >>
> >>> Yup, exactly the same behavior I reported. Maybe you can add more
> details
> >>> there.
> >>>
> >>> https://urldefense.com/v3/__https://issues.apache.org/jira/browse/
> >>> NETBEANS-4931__;!!GqivPVa7Brio!KovAgWF1h7iV8bk-UI-VPrJsig_4sSLr_0_
> >>> H_m7L3zwewyclaHdaDc6Y4LIEKHHiIcXf$
> >>>
> >>>
> >>>
> >>> On Fri, Dec 11, 2020 at 3:34 AM Humphrey Clerx <hc...@gmail.com>
> wrote:
> >>>
> >>> > Currently we are using NetBeans 8.2 using JDK 1.8 (AdoptOpenJDK
> 8u272)
> >>> > under Windows 10 (and Solaris 11.3).
> >>> >
> >>> > Our project is a NetBeans Platform Application, consisting of
> >>> > several Module Suites with several Modules. Our project sets an
> >>> > explicit Java Platform to use (nbjdk.active=JDK_1.8). We use Ant
> >>> > for building the project.
> >>> >
> >>> > All of this works fine. But recently I tried to migrate to using
> >>> NetBeans
> >>> > 12.2 with nb-javac installed and enabled. I installed NetBeans
> >>> > 12.2
> and
> >>> > configured it to run with JDK 11 (AdoptOpenJDK 11.0.9) as the
> >>> > default
> >>> JDK
> >>> > (by setting jdk_home in netbeans.conf).
> >>> >
> >>> > I then ran NB12.2 without importing settings from NB8.2. Then I
> >>> defined an
> >>> > additional Java Platform to point to the AdoptOpenJDK 1.8
> installation
> >>> > folder to define the JDK_1.8 platform property.
> >>> >
> >>> > If I then open our project and all the modules, NB12.2 starts a
> >>> background
> >>> > scan. During this scanning it throws numerous NPE's (almost
> >>> > every
> >>> second).
> >>> > I'll add the stacktrace at the end of this mail.
> >>> >
> >>> > And on multiple files an "error badge" appears because it
> >>> > imports a
> >>> class
> >>> > (StringUtils) that happens to be defined in two independent
> >>> > modules
> in
> >>> our
> >>> > project (this is to avoid cyclic dependency and visibility
> >>> > between
> >>> modules
> >>> > needing this class).
> >>> >
> >>> > The error badge appears on the import of StringUtils from the
> >>> > one
> >>> module
> >>> > only, not on the imports of StringUtils from the other module.
> >>> > The
> >>> error
> >>> > badge does not appear on the import in the same module where
> >>> StringUtils is
> >>> > defined, but it does appear on the use of StringUtils in the
> >>> > Unit
> Test
> >>> > Packages in the module.
> >>> >
> >>> > The error badge states the following:
> >>> >
> >>> > cannot find symbol
> >>> > symbol: class StringUtils
> >>> > location: package common.util
> >>> >
> >>> >
> >>> > When selecting the "error badge" it asks to "Change to import
> <package
> >>> > name>.StringUtils", suggesting the other StringUtils.java class.
> >>> >
> >>> > Note that when I use Ctrl-O to open the "Go to Type" dialog and
> >>> > type StringUtils it find both instances of StringUtils (plus
> >>> > some
> additional
> >>> > ones e.g. com.sun.xml.internal.ws.util.StringUtils).
> >>> >
> >>> > I tried doing the same with completely disabling/uninstalling
> nb-javac
> >>> and
> >>> > ran 12.2 again from scratch. Doing this, the NPE's still occur,
> >>> > but
> the
> >>> > "error badges" problem disappears.
> >>> >
> >>> > I tried doing the same with installing NB 12.1 (without nb-javac).
> This
> >>> > also stops the NPE's. Installing/enabling nb-javac brings back
> >>> > the
> >>> "error
> >>> > badges" in NB 12.1 as well though.
> >>> >
> >>> > To me it seems nb-javac has a problem with determining
> >>> > visibility of classes between modules when (multiple) classes
> >>> > are defined with the
> >>> same
> >>> > name but that live in a different package/module.
> >>> >
> >>> > And it seems something is broken in NB12.2 with respect to the
> >>> Background
> >>> > scanning in that it throws NPE's all the time.
> >>> >
> >>> > For now I'm using NB12.1 (without nb-javac) and that at least
> >>> > solves
> my
> >>> > "error badge" and NPE problems, but the scanning/etc of javac as
> >>> opposed to
> >>> > using nb-javac seems to slow down the display of e.g. Java Hints
> >>> > and
> >>> other
> >>> > things inside the editor and/or when doing "Find Usages".
> >>> >
> >>> > Note that I'm not having ANY of these problems with NB 8.2
> >>> > (using nb-javac).
> >>> >
> >>> > Is there anyone who can give some idea on how/why these "error
> badges"
> >>> > appear?
> >>> >
> >>> > And/or why NB12.2 seems to throw so many NPE's (as opposed to
> NB12.1)?
> >>> >
> >>> > Greets,
> >>> > Humphrey.
> >>> >
> >>> > ----- NPE stacktrace ----
> >>> >
> >>> > java.lang.NullPointerException
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndR
> unProcs(JavacProcessingEnvironment.java:914)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> com.sun.tools.javac.processing.JavacProcessingEnvironment.access$2500(
> JavacProcessingEnvironment.java:113)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(Ja
> vacProcessingEnvironment.java:1298)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing
> (JavacProcessingEnvironment.java:1380)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.
> java:1350)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.
> java:1240)
> >>> >
> >>> > at
> >>> > com.sun.tools.javac.api.JavacTaskImpl.enter(JavacTaskImpl.java:4
> >>> > 04)
> >>> >
> >>> > at
> >>> >
> >>>
> com.sun.tools.javac.api.JavacTaskImpl.enterTrees(JavacTaskImpl.java:45
> 1)
> >>> >
> >>> > [catch] at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.java.source.nbjavac.indexing.MultiPassCompileWork
> er.compile(MultiPassCompileWorker.java:204)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.java.source.indexing.JavaCustomIndexer.index(Java
> CustomIndexer.java:361)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.spi.indexing.Indexable$MyAccessor$2.run(I
> ndexable.java:138)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runIndexe
> r(RepositoryUpdater.java:275)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.spi.indexing.Indexable$MyAccessor.index(I
> ndexable.java:136)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.doIn
> dex(RepositoryUpdater.java:2750)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.acce
> ss$800(RepositoryUpdater.java:2154)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work$1.ru
> n(RepositoryUpdater.java:2636)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work$1.ru
> n(RepositoryUpdater.java:2634)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.errors.TaskCache.refreshTra
> nsaction(TaskCache.java:540)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.inde
> x(RepositoryUpdater.java:2634)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractR
> ootsWork$4.call(RepositoryUpdater.java:5714)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractR
> ootsWork$4.call(RepositoryUpdater.java:5622)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$4.run(Rep
> ositoryUpdater.java:2127)
> >>> >
> >>> > at
> >>> > org.openide.util.lookup.Lookups.executeWith(Lookups.java:279)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runInCont
> ext(RepositoryUpdater.java:2123)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runInCont
> ext(RepositoryUpdater.java:2104)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.access$15
> 00(RepositoryUpdater.java:136)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractR
> ootsWork.scanSource(RepositoryUpdater.java:5749)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractR
> ootsWork.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.doTh
> eWork(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.acce
> ss$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.performSc
> an(RunWhenScanFinishedSupport.java:83)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$2.ca
> ll(RepositoryUpdater.java:6095)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$2.ca
> ll(RepositoryUpdater.java:6091)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.masterfs.filebasedfs.utils.FileChangedManager.pri
> orityIO(FileChangedManager.java:153)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.masterfs.providers.ProvidedExtensions.priorityIO(
> ProvidedExtensions.java:335)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.nb.DataObjectEnvFactory.runPriorityIO(Dat
> aObjectEnvFactory.java:118)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.Utilities.runPriorityIO(Utilities.ja
> va:67)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task.run(
> RepositoryUpdater.java:6091)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executor
> s.java:515)
> >>> >
> >>> > at
> >>> > java.base/java.util.concurrent.FutureTask.run(FutureTask.java:26
> >>> > 4)
> >>> >
> >>> > at
> >>> >
> org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1418)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.ja
> va:45)
> >>> >
> >>> > at
> >>> > org.openide.util.lookup.Lookups.executeWith(Lookups.java:278)
> >>> >
> >>> > at
> >>> >
> >>>
> org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:
> 2033)
> >>> >
> >>> > --
> >>> > In the mountains of truth, you never climb in vain - Nietzsche
> >>> > #-------------------------------------------------------------
> >>> > \_O
> >>> > ,__/>
> >>> > <"
> >>> > '
> >>> >
> >>>
> >>
> >>
> >> --
> >> In the mountains of truth, you never climb in vain - Nietzsche
> >> #-------------------------------------------------------------
> >> \_O
> >> ,__/>
> >> <"
> >> '
> >>
> >
> >
> > --
> > In the mountains of truth, you never climb in vain - Nietzsche
> > #-------------------------------------------------------------
> > \_O
> > ,__/>
> > <"
> > '
> >
> > --------------------------------------------------------------------
> > - To unsubscribe, e-mail: dev-unsubscribe@netbeans.apache.org
> > For additional commands, e-mail: dev-help@netbeans.apache.org
> >
> > For further information about the NetBeans mailing lists, visit:
> > https://urldefense.com/v3/__https://cwiki.apache.org/confluence/disp
> > lay/NETBEANS/Mailing*lists__;Kw!!GqivPVa7Brio!KovAgWF1h7iV8bk-UI-VPr
> > Jsig_4sSLr_0_H_m7L3zwewyclaHdaDc6Y4LIEKIZl6nTn$
> >
> >
>
--
In the mountains of truth, you never climb in vain - Nietzsche
#-------------------------------------------------------------
\_O
,__/>
<"
'
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@netbeans.apache.org
For additional commands, e-mail: dev-help@netbeans.apache.org
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
Re: NetBeans 12.x shows error badges on imports
Posted by Humphrey Clerx <hc...@gmail.com>.
Hi Tulach,
Hello to you too. Indeed quite a long time. We're still going strong with
the use of the NetBeans RCP in our software.
I totally agree that somewhen in the future nb-javac should converge with
javac (or vice versa), but until then I hope we can fix nb-javac.
I do hope the sample project helps in finding the problem with nb-javac. At
first I thought it was a generic problem to do with duplicate class(es) in
separate modules, used by other modules. But it turned out, at least in my
case (I don't know if this is the same problem as reported by Javier
in NETBEANS-4931) it was actually due to the particular StringUtils class
that we were using that has some convenience lookup tables for Integer to
String conversion. But still it's puzzling as to why nb-javac has a problem
with this. In any case I'm glad we're able to reproduce it and that
hopefully a fix can be found.
Should I create a separate JIRA issue for this, or attach the sample
project to NETBEANS-4931?
Greets,
Humphrey.
On Tue, Jan 5, 2021 at 10:22 AM Jaroslav Tulach <ja...@gmail.com>
wrote:
> Long time no see Humphrey!
>
> Thanks a lot for your simplified test case. It makes sense to record it
> into JIRA for tracking purposes.
>
> I talked about your problem with Jan Lahoda and we believe that the best
> way to fix the problem is to eliminate differences between Javac and
> NbJavac as discussed in
>
> https://lists.apache.org/thread.html/r5f210c99b0926aeaac2d0c3c419ff4b79e01f15b67c5ddcf32a51bbe%40%3Cdev.netbeans.apache.org%3E
> that however is going to take about a year.
>
> Reporting JIRA issue may possibly speed resolution of the problem by other
> means[1] without waiting for implementation of the "big idea".
> -jt
>
> [1] by fixing the bug in current nb-javac.
>
> út 22. 12. 2020 v 9:16 odesílatel Humphrey Clerx <hc...@gmail.com>
> napsal:
>
> > I've been able to narrow the problem down and have an example module
> suite
> > that shows the problem.
> >
> > It turned out it has nothing to do with duplicate classes being defined
> in
> > different modules and both being visible in other modules. The problem is
> > with the one file StringUtils in one module.
> >
> > When opening the suite and the modules the "error badges" appear. The
> > "error badges" also appear in the Unit Test package in the same module.
> >
> > This problem happens with any NetBeans 12.x when using nb-javac.
> >
> > The problem itself seems to be caused by the String lookup arrays
> > OCTAL_NUMBERS and NUMBERS. If you remove these and refactor the code to
> use
> > Integer.toString(val), the "error badges" disappear.
> >
> > When deactivating and removing nb-javac, so that the JDK_1.8 javac is
> > used, the "error badges" also don't appear (even with the lookup arrays).
> >
> > It seems nb-javac has a problem parsing/caching/... the class
> StringUtils,
> > such that it's no longer visible in other modules. It's cumbersome to
> > knwo why this is happening, since nb-javac gived no logging output, other
> > than several NPE's in the messages.log and the INFO log entries.
> >
> > INFO [org.netbeans.api.java.source.ElementHandle]: Resolved type is null
> > for kind = CLASS
> > INFO [org.netbeans.api.java.source.ElementHandle]: Cannot resolve:
> > ElementHandle[kind=CLASS;
> > sigs=org.nato.unclassified.mice.common.util.StringUtils ]
> > INFO [org.netbeans.modules.java.editor.imports.ComputeImports]: Cannot
> > resolve type element "ElementHandle[kind=CLASS;
> > sigs=org.nato.unclassified.mice.common.util.StringUtils ]".
> >
> >
> > Maybe someone can shed some light on why this is and possibly fix it for
> > NB 12.3?
> >
> > Greets,
> > Humphrey.
> >
> >
> > On Fri, Dec 18, 2020 at 3:11 PM Humphrey Clerx <hc...@gmail.com> wrote:
> >
> >> I checked the messages.log of NetBeans 12.2 and found the following kind
> >> of entries:
> >>
> >> INFO [org.netbeans.api.java.source.ElementHandle]: Resolved type is null
> >> for kind = CLASS
> >> INFO [org.netbeans.api.java.source.ElementHandle]: Cannot resolve:
> >> ElementHandle[kind=CLASS;
> >> sigs=org.nato.unclassified.mice.common.util.StringUtils ]
> >> INFO [org.netbeans.modules.java.editor.imports.ComputeImports]: Cannot
> >> resolve type element "ElementHandle[kind=CLASS;
> >> sigs=org.nato.unclassified.mice.common.util.StringUtils ]".
> >>
> >> And the log is also full of the following entries:
> >>
> >> java.lang.NullPointerException
> >> WARNING [org.netbeans.modules.java.source.indexing.JavaIndex]:
> >> MultiPassCompileWorker caused an exception
> >>
> >>
> >>
> >>
> >> On Fri, Dec 11, 2020 at 2:21 PM Javier Ortiz Bultron <
> >> javier.ortiz.78@gmail.com> wrote:
> >>
> >>> Yup, exactly the same behavior I reported. Maybe you can add more
> details
> >>> there.
> >>>
> >>> https://issues.apache.org/jira/browse/NETBEANS-4931
> >>>
> >>>
> >>>
> >>> On Fri, Dec 11, 2020 at 3:34 AM Humphrey Clerx <hc...@gmail.com>
> wrote:
> >>>
> >>> > Currently we are using NetBeans 8.2 using JDK 1.8 (AdoptOpenJDK
> 8u272)
> >>> > under Windows 10 (and Solaris 11.3).
> >>> >
> >>> > Our project is a NetBeans Platform Application, consisting of several
> >>> > Module Suites with several Modules. Our project sets an explicit Java
> >>> > Platform to use (nbjdk.active=JDK_1.8). We use Ant for building the
> >>> > project.
> >>> >
> >>> > All of this works fine. But recently I tried to migrate to using
> >>> NetBeans
> >>> > 12.2 with nb-javac installed and enabled. I installed NetBeans 12.2
> and
> >>> > configured it to run with JDK 11 (AdoptOpenJDK 11.0.9) as the default
> >>> JDK
> >>> > (by setting jdk_home in netbeans.conf).
> >>> >
> >>> > I then ran NB12.2 without importing settings from NB8.2. Then I
> >>> defined an
> >>> > additional Java Platform to point to the AdoptOpenJDK 1.8
> installation
> >>> > folder to define the JDK_1.8 platform property.
> >>> >
> >>> > If I then open our project and all the modules, NB12.2 starts a
> >>> background
> >>> > scan. During this scanning it throws numerous NPE's (almost every
> >>> second).
> >>> > I'll add the stacktrace at the end of this mail.
> >>> >
> >>> > And on multiple files an "error badge" appears because it imports a
> >>> class
> >>> > (StringUtils) that happens to be defined in two independent modules
> in
> >>> our
> >>> > project (this is to avoid cyclic dependency and visibility between
> >>> modules
> >>> > needing this class).
> >>> >
> >>> > The error badge appears on the import of StringUtils from the one
> >>> module
> >>> > only, not on the imports of StringUtils from the other module. The
> >>> error
> >>> > badge does not appear on the import in the same module where
> >>> StringUtils is
> >>> > defined, but it does appear on the use of StringUtils in the Unit
> Test
> >>> > Packages in the module.
> >>> >
> >>> > The error badge states the following:
> >>> >
> >>> > cannot find symbol
> >>> > symbol: class StringUtils
> >>> > location: package common.util
> >>> >
> >>> >
> >>> > When selecting the "error badge" it asks to "Change to import
> <package
> >>> > name>.StringUtils", suggesting the other StringUtils.java class.
> >>> >
> >>> > Note that when I use Ctrl-O to open the "Go to Type" dialog and type
> >>> > StringUtils it find both instances of StringUtils (plus some
> additional
> >>> > ones e.g. com.sun.xml.internal.ws.util.StringUtils).
> >>> >
> >>> > I tried doing the same with completely disabling/uninstalling
> nb-javac
> >>> and
> >>> > ran 12.2 again from scratch. Doing this, the NPE's still occur, but
> the
> >>> > "error badges" problem disappears.
> >>> >
> >>> > I tried doing the same with installing NB 12.1 (without nb-javac).
> This
> >>> > also stops the NPE's. Installing/enabling nb-javac brings back the
> >>> "error
> >>> > badges" in NB 12.1 as well though.
> >>> >
> >>> > To me it seems nb-javac has a problem with determining visibility of
> >>> > classes between modules when (multiple) classes are defined with the
> >>> same
> >>> > name but that live in a different package/module.
> >>> >
> >>> > And it seems something is broken in NB12.2 with respect to the
> >>> Background
> >>> > scanning in that it throws NPE's all the time.
> >>> >
> >>> > For now I'm using NB12.1 (without nb-javac) and that at least solves
> my
> >>> > "error badge" and NPE problems, but the scanning/etc of javac as
> >>> opposed to
> >>> > using nb-javac seems to slow down the display of e.g. Java Hints and
> >>> other
> >>> > things inside the editor and/or when doing "Find Usages".
> >>> >
> >>> > Note that I'm not having ANY of these problems with NB 8.2 (using
> >>> > nb-javac).
> >>> >
> >>> > Is there anyone who can give some idea on how/why these "error
> badges"
> >>> > appear?
> >>> >
> >>> > And/or why NB12.2 seems to throw so many NPE's (as opposed to
> NB12.1)?
> >>> >
> >>> > Greets,
> >>> > Humphrey.
> >>> >
> >>> > ----- NPE stacktrace ----
> >>> >
> >>> > java.lang.NullPointerException
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:914)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> com.sun.tools.javac.processing.JavacProcessingEnvironment.access$2500(JavacProcessingEnvironment.java:113)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1298)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1380)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1350)
> >>> >
> >>> > at
> >>> >
> >>> >
> >>>
> com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1240)
> >>> >
> >>> > 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.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)
> >>> >
> >>> > --
> >>> > In the mountains of truth, you never climb in vain - Nietzsche
> >>> > #-------------------------------------------------------------
> >>> > \_O
> >>> > ,__/>
> >>> > <"
> >>> > '
> >>> >
> >>>
> >>
> >>
> >> --
> >> In the mountains of truth, you never climb in vain - Nietzsche
> >> #-------------------------------------------------------------
> >> \_O
> >> ,__/>
> >> <"
> >> '
> >>
> >
> >
> > --
> > In the mountains of truth, you never climb in vain - Nietzsche
> > #-------------------------------------------------------------
> > \_O
> > ,__/>
> > <"
> > '
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@netbeans.apache.org
> > For additional commands, e-mail: dev-help@netbeans.apache.org
> >
> > For further information about the NetBeans mailing lists, visit:
> > https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
> >
> >
>
--
In the mountains of truth, you never climb in vain - Nietzsche
#-------------------------------------------------------------
\_O
,__/>
<"
'
Re: NetBeans 12.x shows error badges on imports
Posted by Jaroslav Tulach <ja...@gmail.com>.
Long time no see Humphrey!
Thanks a lot for your simplified test case. It makes sense to record it
into JIRA for tracking purposes.
I talked about your problem with Jan Lahoda and we believe that the best
way to fix the problem is to eliminate differences between Javac and
NbJavac as discussed in
https://lists.apache.org/thread.html/r5f210c99b0926aeaac2d0c3c419ff4b79e01f15b67c5ddcf32a51bbe%40%3Cdev.netbeans.apache.org%3E
that however is going to take about a year.
Reporting JIRA issue may possibly speed resolution of the problem by other
means[1] without waiting for implementation of the "big idea".
-jt
[1] by fixing the bug in current nb-javac.
út 22. 12. 2020 v 9:16 odesílatel Humphrey Clerx <hc...@gmail.com> napsal:
> I've been able to narrow the problem down and have an example module suite
> that shows the problem.
>
> It turned out it has nothing to do with duplicate classes being defined in
> different modules and both being visible in other modules. The problem is
> with the one file StringUtils in one module.
>
> When opening the suite and the modules the "error badges" appear. The
> "error badges" also appear in the Unit Test package in the same module.
>
> This problem happens with any NetBeans 12.x when using nb-javac.
>
> The problem itself seems to be caused by the String lookup arrays
> OCTAL_NUMBERS and NUMBERS. If you remove these and refactor the code to use
> Integer.toString(val), the "error badges" disappear.
>
> When deactivating and removing nb-javac, so that the JDK_1.8 javac is
> used, the "error badges" also don't appear (even with the lookup arrays).
>
> It seems nb-javac has a problem parsing/caching/... the class StringUtils,
> such that it's no longer visible in other modules. It's cumbersome to
> knwo why this is happening, since nb-javac gived no logging output, other
> than several NPE's in the messages.log and the INFO log entries.
>
> INFO [org.netbeans.api.java.source.ElementHandle]: Resolved type is null
> for kind = CLASS
> INFO [org.netbeans.api.java.source.ElementHandle]: Cannot resolve:
> ElementHandle[kind=CLASS;
> sigs=org.nato.unclassified.mice.common.util.StringUtils ]
> INFO [org.netbeans.modules.java.editor.imports.ComputeImports]: Cannot
> resolve type element "ElementHandle[kind=CLASS;
> sigs=org.nato.unclassified.mice.common.util.StringUtils ]".
>
>
> Maybe someone can shed some light on why this is and possibly fix it for
> NB 12.3?
>
> Greets,
> Humphrey.
>
>
> On Fri, Dec 18, 2020 at 3:11 PM Humphrey Clerx <hc...@gmail.com> wrote:
>
>> I checked the messages.log of NetBeans 12.2 and found the following kind
>> of entries:
>>
>> INFO [org.netbeans.api.java.source.ElementHandle]: Resolved type is null
>> for kind = CLASS
>> INFO [org.netbeans.api.java.source.ElementHandle]: Cannot resolve:
>> ElementHandle[kind=CLASS;
>> sigs=org.nato.unclassified.mice.common.util.StringUtils ]
>> INFO [org.netbeans.modules.java.editor.imports.ComputeImports]: Cannot
>> resolve type element "ElementHandle[kind=CLASS;
>> sigs=org.nato.unclassified.mice.common.util.StringUtils ]".
>>
>> And the log is also full of the following entries:
>>
>> java.lang.NullPointerException
>> WARNING [org.netbeans.modules.java.source.indexing.JavaIndex]:
>> MultiPassCompileWorker caused an exception
>>
>>
>>
>>
>> On Fri, Dec 11, 2020 at 2:21 PM Javier Ortiz Bultron <
>> javier.ortiz.78@gmail.com> wrote:
>>
>>> Yup, exactly the same behavior I reported. Maybe you can add more details
>>> there.
>>>
>>> https://issues.apache.org/jira/browse/NETBEANS-4931
>>>
>>>
>>>
>>> On Fri, Dec 11, 2020 at 3:34 AM Humphrey Clerx <hc...@gmail.com> wrote:
>>>
>>> > Currently we are using NetBeans 8.2 using JDK 1.8 (AdoptOpenJDK 8u272)
>>> > under Windows 10 (and Solaris 11.3).
>>> >
>>> > Our project is a NetBeans Platform Application, consisting of several
>>> > Module Suites with several Modules. Our project sets an explicit Java
>>> > Platform to use (nbjdk.active=JDK_1.8). We use Ant for building the
>>> > project.
>>> >
>>> > All of this works fine. But recently I tried to migrate to using
>>> NetBeans
>>> > 12.2 with nb-javac installed and enabled. I installed NetBeans 12.2 and
>>> > configured it to run with JDK 11 (AdoptOpenJDK 11.0.9) as the default
>>> JDK
>>> > (by setting jdk_home in netbeans.conf).
>>> >
>>> > I then ran NB12.2 without importing settings from NB8.2. Then I
>>> defined an
>>> > additional Java Platform to point to the AdoptOpenJDK 1.8 installation
>>> > folder to define the JDK_1.8 platform property.
>>> >
>>> > If I then open our project and all the modules, NB12.2 starts a
>>> background
>>> > scan. During this scanning it throws numerous NPE's (almost every
>>> second).
>>> > I'll add the stacktrace at the end of this mail.
>>> >
>>> > And on multiple files an "error badge" appears because it imports a
>>> class
>>> > (StringUtils) that happens to be defined in two independent modules in
>>> our
>>> > project (this is to avoid cyclic dependency and visibility between
>>> modules
>>> > needing this class).
>>> >
>>> > The error badge appears on the import of StringUtils from the one
>>> module
>>> > only, not on the imports of StringUtils from the other module. The
>>> error
>>> > badge does not appear on the import in the same module where
>>> StringUtils is
>>> > defined, but it does appear on the use of StringUtils in the Unit Test
>>> > Packages in the module.
>>> >
>>> > The error badge states the following:
>>> >
>>> > cannot find symbol
>>> > symbol: class StringUtils
>>> > location: package common.util
>>> >
>>> >
>>> > When selecting the "error badge" it asks to "Change to import <package
>>> > name>.StringUtils", suggesting the other StringUtils.java class.
>>> >
>>> > Note that when I use Ctrl-O to open the "Go to Type" dialog and type
>>> > StringUtils it find both instances of StringUtils (plus some additional
>>> > ones e.g. com.sun.xml.internal.ws.util.StringUtils).
>>> >
>>> > I tried doing the same with completely disabling/uninstalling nb-javac
>>> and
>>> > ran 12.2 again from scratch. Doing this, the NPE's still occur, but the
>>> > "error badges" problem disappears.
>>> >
>>> > I tried doing the same with installing NB 12.1 (without nb-javac). This
>>> > also stops the NPE's. Installing/enabling nb-javac brings back the
>>> "error
>>> > badges" in NB 12.1 as well though.
>>> >
>>> > To me it seems nb-javac has a problem with determining visibility of
>>> > classes between modules when (multiple) classes are defined with the
>>> same
>>> > name but that live in a different package/module.
>>> >
>>> > And it seems something is broken in NB12.2 with respect to the
>>> Background
>>> > scanning in that it throws NPE's all the time.
>>> >
>>> > For now I'm using NB12.1 (without nb-javac) and that at least solves my
>>> > "error badge" and NPE problems, but the scanning/etc of javac as
>>> opposed to
>>> > using nb-javac seems to slow down the display of e.g. Java Hints and
>>> other
>>> > things inside the editor and/or when doing "Find Usages".
>>> >
>>> > Note that I'm not having ANY of these problems with NB 8.2 (using
>>> > nb-javac).
>>> >
>>> > Is there anyone who can give some idea on how/why these "error badges"
>>> > appear?
>>> >
>>> > And/or why NB12.2 seems to throw so many NPE's (as opposed to NB12.1)?
>>> >
>>> > Greets,
>>> > Humphrey.
>>> >
>>> > ----- NPE stacktrace ----
>>> >
>>> > java.lang.NullPointerException
>>> >
>>> > at
>>> >
>>> >
>>> com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:914)
>>> >
>>> > at
>>> >
>>> >
>>> com.sun.tools.javac.processing.JavacProcessingEnvironment.access$2500(JavacProcessingEnvironment.java:113)
>>> >
>>> > at
>>> >
>>> >
>>> com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1298)
>>> >
>>> > at
>>> >
>>> >
>>> com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1380)
>>> >
>>> > at
>>> >
>>> >
>>> com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1350)
>>> >
>>> > at
>>> >
>>> >
>>> com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1240)
>>> >
>>> > 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.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)
>>> >
>>> > --
>>> > In the mountains of truth, you never climb in vain - Nietzsche
>>> > #-------------------------------------------------------------
>>> > \_O
>>> > ,__/>
>>> > <"
>>> > '
>>> >
>>>
>>
>>
>> --
>> In the mountains of truth, you never climb in vain - Nietzsche
>> #-------------------------------------------------------------
>> \_O
>> ,__/>
>> <"
>> '
>>
>
>
> --
> In the mountains of truth, you never climb in vain - Nietzsche
> #-------------------------------------------------------------
> \_O
> ,__/>
> <"
> '
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@netbeans.apache.org
> For additional commands, e-mail: dev-help@netbeans.apache.org
>
> For further information about the NetBeans mailing lists, visit:
> https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
>
>
Re: NetBeans 12.x shows error badges on imports
Posted by Humphrey Clerx <hc...@gmail.com>.
I've been able to narrow the problem down and have an example module suite
that shows the problem.
It turned out it has nothing to do with duplicate classes being defined in
different modules and both being visible in other modules. The problem is
with the one file StringUtils in one module.
When opening the suite and the modules the "error badges" appear. The
"error badges" also appear in the Unit Test package in the same module.
This problem happens with any NetBeans 12.x when using nb-javac.
The problem itself seems to be caused by the String lookup arrays
OCTAL_NUMBERS and NUMBERS. If you remove these and refactor the code to use
Integer.toString(val), the "error badges" disappear.
When deactivating and removing nb-javac, so that the JDK_1.8 javac is used,
the "error badges" also don't appear (even with the lookup arrays).
It seems nb-javac has a problem parsing/caching/... the class StringUtils,
such that it's no longer visible in other modules. It's cumbersome to
knwo why this is happening, since nb-javac gived no logging output, other
than several NPE's in the messages.log and the INFO log entries.
INFO [org.netbeans.api.java.source.ElementHandle]: Resolved type is null
for kind = CLASS
INFO [org.netbeans.api.java.source.ElementHandle]: Cannot resolve:
ElementHandle[kind=CLASS;
sigs=org.nato.unclassified.mice.common.util.StringUtils ]
INFO [org.netbeans.modules.java.editor.imports.ComputeImports]: Cannot
resolve type element "ElementHandle[kind=CLASS;
sigs=org.nato.unclassified.mice.common.util.StringUtils ]".
Maybe someone can shed some light on why this is and possibly fix it for NB
12.3?
Greets,
Humphrey.
On Fri, Dec 18, 2020 at 3:11 PM Humphrey Clerx <hc...@gmail.com> wrote:
> I checked the messages.log of NetBeans 12.2 and found the following kind
> of entries:
>
> INFO [org.netbeans.api.java.source.ElementHandle]: Resolved type is null
> for kind = CLASS
> INFO [org.netbeans.api.java.source.ElementHandle]: Cannot resolve:
> ElementHandle[kind=CLASS;
> sigs=org.nato.unclassified.mice.common.util.StringUtils ]
> INFO [org.netbeans.modules.java.editor.imports.ComputeImports]: Cannot
> resolve type element "ElementHandle[kind=CLASS;
> sigs=org.nato.unclassified.mice.common.util.StringUtils ]".
>
> And the log is also full of the following entries:
>
> java.lang.NullPointerException
> WARNING [org.netbeans.modules.java.source.indexing.JavaIndex]:
> MultiPassCompileWorker caused an exception
>
>
>
>
> On Fri, Dec 11, 2020 at 2:21 PM Javier Ortiz Bultron <
> javier.ortiz.78@gmail.com> wrote:
>
>> Yup, exactly the same behavior I reported. Maybe you can add more details
>> there.
>>
>> https://issues.apache.org/jira/browse/NETBEANS-4931
>>
>>
>>
>> On Fri, Dec 11, 2020 at 3:34 AM Humphrey Clerx <hc...@gmail.com> wrote:
>>
>> > Currently we are using NetBeans 8.2 using JDK 1.8 (AdoptOpenJDK 8u272)
>> > under Windows 10 (and Solaris 11.3).
>> >
>> > Our project is a NetBeans Platform Application, consisting of several
>> > Module Suites with several Modules. Our project sets an explicit Java
>> > Platform to use (nbjdk.active=JDK_1.8). We use Ant for building the
>> > project.
>> >
>> > All of this works fine. But recently I tried to migrate to using
>> NetBeans
>> > 12.2 with nb-javac installed and enabled. I installed NetBeans 12.2 and
>> > configured it to run with JDK 11 (AdoptOpenJDK 11.0.9) as the default
>> JDK
>> > (by setting jdk_home in netbeans.conf).
>> >
>> > I then ran NB12.2 without importing settings from NB8.2. Then I defined
>> an
>> > additional Java Platform to point to the AdoptOpenJDK 1.8 installation
>> > folder to define the JDK_1.8 platform property.
>> >
>> > If I then open our project and all the modules, NB12.2 starts a
>> background
>> > scan. During this scanning it throws numerous NPE's (almost every
>> second).
>> > I'll add the stacktrace at the end of this mail.
>> >
>> > And on multiple files an "error badge" appears because it imports a
>> class
>> > (StringUtils) that happens to be defined in two independent modules in
>> our
>> > project (this is to avoid cyclic dependency and visibility between
>> modules
>> > needing this class).
>> >
>> > The error badge appears on the import of StringUtils from the one module
>> > only, not on the imports of StringUtils from the other module. The error
>> > badge does not appear on the import in the same module where
>> StringUtils is
>> > defined, but it does appear on the use of StringUtils in the Unit Test
>> > Packages in the module.
>> >
>> > The error badge states the following:
>> >
>> > cannot find symbol
>> > symbol: class StringUtils
>> > location: package common.util
>> >
>> >
>> > When selecting the "error badge" it asks to "Change to import <package
>> > name>.StringUtils", suggesting the other StringUtils.java class.
>> >
>> > Note that when I use Ctrl-O to open the "Go to Type" dialog and type
>> > StringUtils it find both instances of StringUtils (plus some additional
>> > ones e.g. com.sun.xml.internal.ws.util.StringUtils).
>> >
>> > I tried doing the same with completely disabling/uninstalling nb-javac
>> and
>> > ran 12.2 again from scratch. Doing this, the NPE's still occur, but the
>> > "error badges" problem disappears.
>> >
>> > I tried doing the same with installing NB 12.1 (without nb-javac). This
>> > also stops the NPE's. Installing/enabling nb-javac brings back the
>> "error
>> > badges" in NB 12.1 as well though.
>> >
>> > To me it seems nb-javac has a problem with determining visibility of
>> > classes between modules when (multiple) classes are defined with the
>> same
>> > name but that live in a different package/module.
>> >
>> > And it seems something is broken in NB12.2 with respect to the
>> Background
>> > scanning in that it throws NPE's all the time.
>> >
>> > For now I'm using NB12.1 (without nb-javac) and that at least solves my
>> > "error badge" and NPE problems, but the scanning/etc of javac as
>> opposed to
>> > using nb-javac seems to slow down the display of e.g. Java Hints and
>> other
>> > things inside the editor and/or when doing "Find Usages".
>> >
>> > Note that I'm not having ANY of these problems with NB 8.2 (using
>> > nb-javac).
>> >
>> > Is there anyone who can give some idea on how/why these "error badges"
>> > appear?
>> >
>> > And/or why NB12.2 seems to throw so many NPE's (as opposed to NB12.1)?
>> >
>> > Greets,
>> > Humphrey.
>> >
>> > ----- NPE stacktrace ----
>> >
>> > java.lang.NullPointerException
>> >
>> > at
>> >
>> >
>> com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:914)
>> >
>> > at
>> >
>> >
>> com.sun.tools.javac.processing.JavacProcessingEnvironment.access$2500(JavacProcessingEnvironment.java:113)
>> >
>> > at
>> >
>> >
>> com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1298)
>> >
>> > at
>> >
>> >
>> com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1380)
>> >
>> > at
>> >
>> >
>> com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1350)
>> >
>> > at
>> >
>> >
>> com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1240)
>> >
>> > 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.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)
>> >
>> > --
>> > In the mountains of truth, you never climb in vain - Nietzsche
>> > #-------------------------------------------------------------
>> > \_O
>> > ,__/>
>> > <"
>> > '
>> >
>>
>
>
> --
> In the mountains of truth, you never climb in vain - Nietzsche
> #-------------------------------------------------------------
> \_O
> ,__/>
> <"
> '
>
--
In the mountains of truth, you never climb in vain - Nietzsche
#-------------------------------------------------------------
\_O
,__/>
<"
'
Re: NetBeans 12.x shows error badges on imports
Posted by Humphrey Clerx <hc...@gmail.com>.
I checked the messages.log of NetBeans 12.2 and found the following kind of
entries:
INFO [org.netbeans.api.java.source.ElementHandle]: Resolved type is null
for kind = CLASS
INFO [org.netbeans.api.java.source.ElementHandle]: Cannot resolve:
ElementHandle[kind=CLASS;
sigs=org.nato.unclassified.mice.common.util.StringUtils ]
INFO [org.netbeans.modules.java.editor.imports.ComputeImports]: Cannot
resolve type element "ElementHandle[kind=CLASS;
sigs=org.nato.unclassified.mice.common.util.StringUtils ]".
And the log is also full of the following entries:
java.lang.NullPointerException
WARNING [org.netbeans.modules.java.source.indexing.JavaIndex]:
MultiPassCompileWorker caused an exception
On Fri, Dec 11, 2020 at 2:21 PM Javier Ortiz Bultron <
javier.ortiz.78@gmail.com> wrote:
> Yup, exactly the same behavior I reported. Maybe you can add more details
> there.
>
> https://issues.apache.org/jira/browse/NETBEANS-4931
>
>
>
> On Fri, Dec 11, 2020 at 3:34 AM Humphrey Clerx <hc...@gmail.com> wrote:
>
> > Currently we are using NetBeans 8.2 using JDK 1.8 (AdoptOpenJDK 8u272)
> > under Windows 10 (and Solaris 11.3).
> >
> > Our project is a NetBeans Platform Application, consisting of several
> > Module Suites with several Modules. Our project sets an explicit Java
> > Platform to use (nbjdk.active=JDK_1.8). We use Ant for building the
> > project.
> >
> > All of this works fine. But recently I tried to migrate to using NetBeans
> > 12.2 with nb-javac installed and enabled. I installed NetBeans 12.2 and
> > configured it to run with JDK 11 (AdoptOpenJDK 11.0.9) as the default JDK
> > (by setting jdk_home in netbeans.conf).
> >
> > I then ran NB12.2 without importing settings from NB8.2. Then I defined
> an
> > additional Java Platform to point to the AdoptOpenJDK 1.8 installation
> > folder to define the JDK_1.8 platform property.
> >
> > If I then open our project and all the modules, NB12.2 starts a
> background
> > scan. During this scanning it throws numerous NPE's (almost every
> second).
> > I'll add the stacktrace at the end of this mail.
> >
> > And on multiple files an "error badge" appears because it imports a class
> > (StringUtils) that happens to be defined in two independent modules in
> our
> > project (this is to avoid cyclic dependency and visibility between
> modules
> > needing this class).
> >
> > The error badge appears on the import of StringUtils from the one module
> > only, not on the imports of StringUtils from the other module. The error
> > badge does not appear on the import in the same module where StringUtils
> is
> > defined, but it does appear on the use of StringUtils in the Unit Test
> > Packages in the module.
> >
> > The error badge states the following:
> >
> > cannot find symbol
> > symbol: class StringUtils
> > location: package common.util
> >
> >
> > When selecting the "error badge" it asks to "Change to import <package
> > name>.StringUtils", suggesting the other StringUtils.java class.
> >
> > Note that when I use Ctrl-O to open the "Go to Type" dialog and type
> > StringUtils it find both instances of StringUtils (plus some additional
> > ones e.g. com.sun.xml.internal.ws.util.StringUtils).
> >
> > I tried doing the same with completely disabling/uninstalling nb-javac
> and
> > ran 12.2 again from scratch. Doing this, the NPE's still occur, but the
> > "error badges" problem disappears.
> >
> > I tried doing the same with installing NB 12.1 (without nb-javac). This
> > also stops the NPE's. Installing/enabling nb-javac brings back the "error
> > badges" in NB 12.1 as well though.
> >
> > To me it seems nb-javac has a problem with determining visibility of
> > classes between modules when (multiple) classes are defined with the same
> > name but that live in a different package/module.
> >
> > And it seems something is broken in NB12.2 with respect to the Background
> > scanning in that it throws NPE's all the time.
> >
> > For now I'm using NB12.1 (without nb-javac) and that at least solves my
> > "error badge" and NPE problems, but the scanning/etc of javac as opposed
> to
> > using nb-javac seems to slow down the display of e.g. Java Hints and
> other
> > things inside the editor and/or when doing "Find Usages".
> >
> > Note that I'm not having ANY of these problems with NB 8.2 (using
> > nb-javac).
> >
> > Is there anyone who can give some idea on how/why these "error badges"
> > appear?
> >
> > And/or why NB12.2 seems to throw so many NPE's (as opposed to NB12.1)?
> >
> > Greets,
> > Humphrey.
> >
> > ----- NPE stacktrace ----
> >
> > java.lang.NullPointerException
> >
> > at
> >
> >
> com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:914)
> >
> > at
> >
> >
> com.sun.tools.javac.processing.JavacProcessingEnvironment.access$2500(JavacProcessingEnvironment.java:113)
> >
> > at
> >
> >
> com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1298)
> >
> > at
> >
> >
> com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1380)
> >
> > at
> >
> >
> com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1350)
> >
> > at
> >
> >
> com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1240)
> >
> > 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.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)
> >
> > --
> > In the mountains of truth, you never climb in vain - Nietzsche
> > #-------------------------------------------------------------
> > \_O
> > ,__/>
> > <"
> > '
> >
>
--
In the mountains of truth, you never climb in vain - Nietzsche
#-------------------------------------------------------------
\_O
,__/>
<"
'
Re: NetBeans 12.x shows error badges on imports
Posted by Javier Ortiz Bultron <ja...@gmail.com>.
Yup, exactly the same behavior I reported. Maybe you can add more details
there.
https://issues.apache.org/jira/browse/NETBEANS-4931
On Fri, Dec 11, 2020 at 3:34 AM Humphrey Clerx <hc...@gmail.com> wrote:
> Currently we are using NetBeans 8.2 using JDK 1.8 (AdoptOpenJDK 8u272)
> under Windows 10 (and Solaris 11.3).
>
> Our project is a NetBeans Platform Application, consisting of several
> Module Suites with several Modules. Our project sets an explicit Java
> Platform to use (nbjdk.active=JDK_1.8). We use Ant for building the
> project.
>
> All of this works fine. But recently I tried to migrate to using NetBeans
> 12.2 with nb-javac installed and enabled. I installed NetBeans 12.2 and
> configured it to run with JDK 11 (AdoptOpenJDK 11.0.9) as the default JDK
> (by setting jdk_home in netbeans.conf).
>
> I then ran NB12.2 without importing settings from NB8.2. Then I defined an
> additional Java Platform to point to the AdoptOpenJDK 1.8 installation
> folder to define the JDK_1.8 platform property.
>
> If I then open our project and all the modules, NB12.2 starts a background
> scan. During this scanning it throws numerous NPE's (almost every second).
> I'll add the stacktrace at the end of this mail.
>
> And on multiple files an "error badge" appears because it imports a class
> (StringUtils) that happens to be defined in two independent modules in our
> project (this is to avoid cyclic dependency and visibility between modules
> needing this class).
>
> The error badge appears on the import of StringUtils from the one module
> only, not on the imports of StringUtils from the other module. The error
> badge does not appear on the import in the same module where StringUtils is
> defined, but it does appear on the use of StringUtils in the Unit Test
> Packages in the module.
>
> The error badge states the following:
>
> cannot find symbol
> symbol: class StringUtils
> location: package common.util
>
>
> When selecting the "error badge" it asks to "Change to import <package
> name>.StringUtils", suggesting the other StringUtils.java class.
>
> Note that when I use Ctrl-O to open the "Go to Type" dialog and type
> StringUtils it find both instances of StringUtils (plus some additional
> ones e.g. com.sun.xml.internal.ws.util.StringUtils).
>
> I tried doing the same with completely disabling/uninstalling nb-javac and
> ran 12.2 again from scratch. Doing this, the NPE's still occur, but the
> "error badges" problem disappears.
>
> I tried doing the same with installing NB 12.1 (without nb-javac). This
> also stops the NPE's. Installing/enabling nb-javac brings back the "error
> badges" in NB 12.1 as well though.
>
> To me it seems nb-javac has a problem with determining visibility of
> classes between modules when (multiple) classes are defined with the same
> name but that live in a different package/module.
>
> And it seems something is broken in NB12.2 with respect to the Background
> scanning in that it throws NPE's all the time.
>
> For now I'm using NB12.1 (without nb-javac) and that at least solves my
> "error badge" and NPE problems, but the scanning/etc of javac as opposed to
> using nb-javac seems to slow down the display of e.g. Java Hints and other
> things inside the editor and/or when doing "Find Usages".
>
> Note that I'm not having ANY of these problems with NB 8.2 (using
> nb-javac).
>
> Is there anyone who can give some idea on how/why these "error badges"
> appear?
>
> And/or why NB12.2 seems to throw so many NPE's (as opposed to NB12.1)?
>
> Greets,
> Humphrey.
>
> ----- NPE stacktrace ----
>
> java.lang.NullPointerException
>
> at
>
> com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:914)
>
> at
>
> com.sun.tools.javac.processing.JavacProcessingEnvironment.access$2500(JavacProcessingEnvironment.java:113)
>
> at
>
> com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1298)
>
> at
>
> com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1380)
>
> at
>
> com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1350)
>
> at
>
> com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1240)
>
> 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.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)
>
> --
> In the mountains of truth, you never climb in vain - Nietzsche
> #-------------------------------------------------------------
> \_O
> ,__/>
> <"
> '
>