redhat-developer / redhat-developer/vscode-java
Code is underlined with message "cannot be resolved to a type" , but it's not true
Nessuno ha ancora preso questa issue.
- Lingua principale
- TypeScript
- Stelle
- 2.3k
- Fork
- 546
- Merge medio
- 20h 1m
- PR unite (30g)
- 11
Descrizione
[provide a description of the issue]
IDE is showing some classes as "cannot be resolved to a type" , but the class exists, the code compiles fine. And also every now and then typing, waiting, the error disappears and appears again.
Project : https://github.com/jonathanvila/tackle-pathfinder
Line with error now : https://github.com/jonathanvila/tackle-pathfinder/blob/508abe531f3958f9b829e4b1fbac26b2a59a5fd3/src/main/java/io/tackle/pathfinder/model/assessment/AssessmentSingleOption.java#L41

Environment
- Operating System: Fedora 33
- JDK version: OpenJDK 11.0.9
- Visual Studio Code version: 1.55.0
- Java extension version: Language Support for Java 0.76.0
Steps To Reproduce
- Randomly it shows classes as cannot be resolved
[Please attach a sample project reproducing the error]
Project : https://github.com/jonathanvila/tackle-pathfinder
Please attach logs
LOG (today) Language Support extension :
[Error - 10:54:00] 13 Apr 2021, 10:54:00 Problems occurred when invoking code from plug-in: "org.eclipse.jdt.core".
null
java.lang.NullPointerException
at org.eclipse.lsp4mp.jdt.core.utils.JDTMicroProfileUtils.getProjectURI(JDTMicroProfileUtils.java:62)
at org.eclipse.lsp4mp.jdt.core.utils.JDTMicroProfileUtils.getProjectURI(JDTMicroProfileUtils.java:52)
at org.eclipse.lsp4mp.jdt.internal.core.MicroProfilePropertiesListenerManager$MicroProfileListener.processDelta(MicroProfilePropertiesListenerManager.java:105)
at org.eclipse.lsp4mp.jdt.internal.core.MicroProfilePropertiesListenerManager$MicroProfileListener.processDeltaChildren(MicroProfilePropertiesListenerManager.java:85)
at org.eclipse.lsp4mp.jdt.internal.core.MicroProfilePropertiesListenerManager$MicroProfileListener.processDelta(MicroProfilePropertiesListenerManager.java:95)
at org.eclipse.lsp4mp.jdt.internal.core.MicroProfilePropertiesListenerManager$MicroProfileListener.elementChanged(MicroProfilePropertiesListenerManager.java:76)
at org.eclipse.jdt.internal.core.DeltaProcessor$3.run(DeltaProcessor.java:1755)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.jdt.internal.core.DeltaProcessor.notifyListeners(DeltaProcessor.java:1743)
at org.eclipse.jdt.internal.core.DeltaProcessor.firePostChangeDelta(DeltaProcessor.java:1576)
at org.eclipse.jdt.internal.core.DeltaProcessor.fire(DeltaProcessor.java:1552)
at org.eclipse.jdt.internal.core.DeltaProcessor.notifyAndFire(DeltaProcessor.java:2273)
at org.eclipse.jdt.internal.core.DeltaProcessor.resourceChanged(DeltaProcessor.java:2163)
at org.eclipse.jdt.internal.core.DeltaProcessingState.resourceChanged(DeltaProcessingState.java:477)
at org.eclipse.core.internal.events.NotificationManager$1.run(NotificationManager.java:305)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.core.internal.events.NotificationManager.notify(NotificationManager.java:295)
at org.eclipse.core.internal.events.NotificationManager.broadcastChanges(NotificationManager.java:158)
at org.eclipse.core.internal.resources.Workspace.broadcastPostChange(Workspace.java:380)
at org.eclipse.core.internal.resources.Workspace.endOperation(Workspace.java:1502)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:49)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
[Error - 10:54:00] 13 Apr 2021, 10:54:00 Exception occurred in listener of Java element change notification
null
java.lang.NullPointerException
at org.eclipse.lsp4mp.jdt.core.utils.JDTMicroProfileUtils.getProjectURI(JDTMicroProfileUtils.java:62)
at org.eclipse.lsp4mp.jdt.core.utils.JDTMicroProfileUtils.getProjectURI(JDTMicroProfileUtils.java:52)
at org.eclipse.lsp4mp.jdt.internal.core.MicroProfilePropertiesListenerManager$MicroProfileListener.processDelta(MicroProfilePropertiesListenerManager.java:105)
at org.eclipse.lsp4mp.jdt.internal.core.MicroProfilePropertiesListenerManager$MicroProfileListener.processDeltaChildren(MicroProfilePropertiesListenerManager.java:85)
at org.eclipse.lsp4mp.jdt.internal.core.MicroProfilePropertiesListenerManager$MicroProfileListener.processDelta(MicroProfilePropertiesListenerManager.java:95)
at org.eclipse.lsp4mp.jdt.internal.core.MicroProfilePropertiesListenerManager$MicroProfileListener.elementChanged(MicroProfilePropertiesListenerManager.java:76)
at org.eclipse.jdt.internal.core.DeltaProcessor$3.run(DeltaProcessor.java:1755)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.jdt.internal.core.DeltaProcessor.notifyListeners(DeltaProcessor.java:1743)
at org.eclipse.jdt.internal.core.DeltaProcessor.firePostChangeDelta(DeltaProcessor.java:1576)
at org.eclipse.jdt.internal.core.DeltaProcessor.fire(DeltaProcessor.java:1552)
at org.eclipse.jdt.internal.core.DeltaProcessor.notifyAndFire(DeltaProcessor.java:2273)
at org.eclipse.jdt.internal.core.DeltaProcessor.resourceChanged(DeltaProcessor.java:2163)
at org.eclipse.jdt.internal.core.DeltaProcessingState.resourceChanged(DeltaProcessingState.java:477)
at org.eclipse.core.internal.events.NotificationManager$1.run(NotificationManager.java:305)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.core.internal.events.NotificationManager.notify(NotificationManager.java:295)
at org.eclipse.core.internal.events.NotificationManager.broadcastChanges(NotificationManager.java:158)
at org.eclipse.core.internal.resources.Workspace.broadcastPostChange(Workspace.java:380)
at org.eclipse.core.internal.resources.Workspace.endOperation(Workspace.java:1502)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:49)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
LOG ( today ) Extension host :
[2021-04-13 10:59:48.903] [exthost] [error] [redhat.java] provider FAILED
[2021-04-13 10:59:48.903] [exthost] [error] Error: The request (id: 190057, method: 'textDocument/hover') has been cancelled
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76464
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76758
at Immediate. (/home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:77117)
at processImmediate (internal/timers.js:456:21)
[2021-04-13 10:59:52.521] [exthost] [error] [redhat.java] provider FAILED
[2021-04-13 10:59:52.521] [exthost] [error] Error: The request (id: 190077, method: 'textDocument/hover') has been cancelled
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76464
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76758
at Immediate. (/home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:77117)
at processImmediate (internal/timers.js:456:21)
[2021-04-13 11:02:12.706] [exthost] [error] [redhat.java] provider FAILED
[2021-04-13 11:02:12.706] [exthost] [error] Error: The request (id: 190239, method: 'textDocument/hover') has been cancelled
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76464
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76758
at Immediate. (/home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:77117)
at processImmediate (internal/timers.js:456:21)
[2021-04-13 11:02:53.107] [exthost] [error] [redhat.java] provider FAILED
[2021-04-13 11:02:53.107] [exthost] [error] Error: The request (id: 190389, method: 'textDocument/hover') has been cancelled
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76464
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76758
at Immediate. (/home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:77117)
at processImmediate (internal/timers.js:456:21)
[2021-04-13 11:04:18.872] [exthost] [error] [redhat.java] provider FAILED
[2021-04-13 11:04:18.873] [exthost] [error] Error: The request (id: 190531, method: 'textDocument/hover') has been cancelled
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76464
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76758
at Immediate. (/home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:77117)
at processImmediate (internal/timers.js:456:21)
[2021-04-13 11:06:43.284] [exthost] [error] [redhat.java] provider FAILED
[2021-04-13 11:06:43.284] [exthost] [error] Error: The request (id: 190841, method: 'textDocument/hover') has been cancelled
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76464
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76758
at Immediate. (/home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:77117)
at processImmediate (internal/timers.js:456:21)
[2021-04-13 11:06:43.288] [exthost] [error] [redhat.java] provider FAILED
[2021-04-13 11:06:43.288] [exthost] [error] Error: The request (id: 190845, method: 'textDocument/hover') has been cancelled
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76464
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76758
at Immediate. (/home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:77117)
at processImmediate (internal/timers.js:456:21)
[2021-04-13 11:06:43.289] [exthost] [error] [redhat.java] provider FAILED
[2021-04-13 11:06:43.290] [exthost] [error] Error: The request (id: 190849, method: 'textDocument/hover') has been cancelled
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76464
at /home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:76758
at Immediate. (/home/jonathan/.vscode/extensions/redhat.java-0.76.0/dist/extension.js:1:77117)
at processImmediate (internal/timers.js:456:21)
[2021-04-13 11:08:33.211] [exthost] [warning] TextEditor is closed/disposed
[2021-04-13 11:08:39.710] [exthost] [info] ExtensionService#_doActivateExtension vscode.npm {"startup":false,"extensionId":{"value":"vscode.npm","_lower":"vscode.npm"},"activationEvent":"onLanguage:json"}
[2021-04-13 11:08:39.711] [exthost] [info] ExtensionService#loadCommonJSModule file:///usr/share/code/resources/app/extensions/npm/dist/npmMain
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia riproducendo la segnalazione con il progetto tackle-pathfinder collegato e ispeziona lo stack trace in org.lsp4mp.jdt.core.utils.JDTMicroProfileUtils.getProjectURI, in particolare la riga 62. Traccia la gestione dei delta di MicroProfilePropertiesListenerManager intorno al puntatore nullo segnalato e alle diagnosi intermittenti di tipi non risolti. Il lavoro è completato quando il listener non fallisce più e le classi valide non vengono segnalate intermittentemente come non risolte.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- java, typescript, vscode
- Ambito
- devtools, tooling
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 25/100