microsoft / microsoft/vscode-java-debug

Can not step into method

Offen
#1,523 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

ai-triaged bug
Vorherrschende Sprache
TypeScript
Sterne
591
Forks
429
Ø Merge
1 T. 9 Std.
Gemergte PRs (30 T.)
19

Beschreibung

This was run on Linux.
VsCode Version: 1.95.2
language server version: 1.36.0
vscode-java-debug version: 0.58.1

  1. Clone https://github.com/eclipse-jdtls/eclipse.jdt.ls,
  2. start into debug mode
  3. Set debug at 164
    https://github.com/eclipse-jdtls/eclipse.jdt.ls/blob/f155e1fc90618b558899c3722606feccfc89e210/org.eclipse.jdt.ls.core/src/org/eclipse/jdt/ls/core/internal/managers/ProjectsManager.java#L155-L179
  4. And try to step into that method with "SHIFT" + step into shortcut and select that method

I have only the jdtls logs.

JDTLS Logs

[Error - 7:03:10 PM] Nov 12, 2024, 7:03:10 PM (java.util.stream.ReferencePipeline<P_IN,P_OUT>, java.util.stream.AbstractPipeline<?,P_OUT,?>, java.util.stream.StreamShape, int) {key=Ljava/util/stream/ReferencePipeline$21225;.(Ljava/util/stream/ReferencePipeline;Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;ILjava/util/function/Consumer;)V} [in <anonymous> [in ReferencePipeline$15.class [in java.util.stream [in <module:java.base>]]]] does not exist
(java.util.stream.ReferencePipeline<P_IN,P_OUT>, java.util.stream.AbstractPipeline<?,P_OUT,?>, java.util.stream.StreamShape, int) {key=Ljava/util/stream/ReferencePipeline$21225;.(Ljava/util/stream/ReferencePipeline;Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;ILjava/util/function/Consumer;)V} [in <anonymous> [in ReferencePipeline$15.class [in java.util.stream [in <module:java.base>]]]] does not exist
Java Model Exception: Error in Java Model (code 969): (java.util.stream.ReferencePipeline<P_IN,P_OUT>, java.util.stream.AbstractPipeline<?,P_OUT,?>, java.util.stream.StreamShape, int) {key=Ljava/util/stream/ReferencePipeline$21225;.(Ljava/util/stream/ReferencePipeline;Ljava/util/stream/AbstractPipeline;Ljava/util/stream/StreamShape;ILjava/util/function/Consumer;)V} [in <anonymous> [in ReferencePipeline$15.class [in java.util.stream [in <module:java.base>]]]] does not exist
	at org.eclipse.jdt.internal.core.JavaElement.newNotPresentException(JavaElement.java:546)
	at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:589)
	at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:292)
	at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:278)
	at org.eclipse.jdt.internal.core.BinaryMethod.getParameterNames(BinaryMethod.java:287)
	at org.eclipse.jdt.ls.core.internal.handlers.InlayHintVisitor.getParameterNames(InlayHintVisitor.java:215)
	at org.eclipse.jdt.ls.core.internal.handlers.InlayHintVisitor.resolveInlayHints(InlayHintVisitor.java:165)
	at org.eclipse.jdt.ls.core.internal.handlers.InlayHintVisitor.visit(InlayHintVisitor.java:78)
	at org.eclipse.jdt.core.dom.ClassInstanceCreation.accept0(ClassInstanceCreation.java:293)
	at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3312)
	at org.eclipse.jdt.core.dom.ASTNode.acceptChild(ASTNode.java:3360)
	at org.eclipse.jdt.core.dom.ReturnStatement.accept0(ReturnStatement.java:128)
	at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3312)
	at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:3383)
	at org.eclipse.jdt.core.dom.Block.accept0(Block.java:128)
	at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3312)
	at org.eclipse.jdt.core.dom.ASTNode.acceptChild(ASTNode.java:3360)
	at org.eclipse.jdt.core.dom.MethodDeclaration.accept0(MethodDeclaration.java:676)
	at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3312)
	at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:3383)
	at org.eclipse.jdt.core.dom.TypeDeclaration.accept0(TypeDeclaration.java:497)
	at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3312)
	at org.eclipse.jdt.core.dom.ASTNode.acceptChildren(ASTNode.java:3383)
	at org.eclipse.jdt.core.dom.CompilationUnit.accept0(CompilationUnit.java:257)
	at org.eclipse.jdt.core.dom.ASTNode.accept(ASTNode.java:3312)
	at org.eclipse.jdt.ls.core.internal.handlers.InlayHintsHandler.inlayHint(InlayHintsHandler.java:81)
	at org.eclipse.jdt.ls.core.internal.handlers.JDTLanguageServer.lambda$56(JDTLanguageServer.java:1189)
	at org.eclipse.jdt.ls.core.internal.BaseJDTLanguageServer.lambda$0(BaseJDTLanguageServer.java:87)
	at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:690)
	at java.base/java.util.concurrent.CompletableFuture$Completion.exec(CompletableFuture.java:527)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:507)
	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1458)
	at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:2034)
	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:189)

Nov 12, 2024 7:04:27 PM com.microsoft.java.debug.core.UsageDataSession recordResponse
WARNING: abnormal response

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Reproduzieren Sie den Linux-Fall mit den aufgeführten Versionen von VS Code, dem Language Server und vscode-java-debug, beginnend mit den Zeilen 155-179 in ProjectsManager.java. Lesen Sie den protokollierten InlayHintVisitor- und Java Model Exception-Stack und verfolgen Sie dann, wie sich die fehlgeschlagene Suche auf das Hineinschritt in die ausgewählte Methode auswirkt. Als erledigt gilt die Aufgabe, wenn die Methode ausgewählt und hineingeschritten werden kann, ohne dass der gemeldete Java-Modellfehler auftritt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java, vscode
Bereich
devtools
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
32/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.