redhat-developer / redhat-developer/vscode-java

The filename of the class(with source code included) should not end with .class on debugging scene

Open
#4,356 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
TypeScript
Stars
2.3k
Forks
546
Avg merge
20h 1m
Merged PRs (30d)
11

Description

When we normally open a class with source code, its filename ends with .java. However, if we jump to a class with source code during debugging, the filename ends with .class. This results in the same class being opened twice (one ending with .java and the other with .class), which is very confusing. Could we standardize this behavior? If a class has source code, it should always be opened as a file ending with .java.

Image

Meanwhile, a breakpoint has been set in the .java file (the Java source file of the class), but during debugging, the execution jumps to and breaks at the .class file instead. The breakpoint symbol is not displayed, yet it actually takes effect. This issue occurs because the same class has been opened with different file extensions.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the debugging navigation with a Java class that has source code and compare the opened .java and .class entries. Trace the source mapping or breakpoint navigation path, then verify that source-backed classes open only as .java files and that breakpoint symbols appear on that file.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, typescript
Domain
devtools
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.