All notable changes to the "vscode-java-debugger" extension will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Support breaking when value changes (a.k.a. Data Breakpoints). #654.
- Improve "Run Java" experience:
F5
will run the current file without generating launch.json. #724.
- Debug console will hang on Java exception stack trace. #719.
- Debug console won't automatically append
()
if selecting a method in completion list. #711, #691. - Cannot pass
vmArgs
array to Java 13 project. #703.
- Provide "Fix..." suggestions when "Build failed" occurs during launching the application. #358.
- Prompt to add the folder to source path if the running file isn't on classpath. #470.
- Provide samples for the commonly used debug configuration. See the doc.
- It's safe to keep running the run/debug codelens if the debug configuration fails to save into the launch.json. PR#673.
- Improve the error handling when running the file via the context "run" or "debug" menu. PR#679.
- Support searching main classes from the workspace invisible project. PR#305.
- Update troubleshooting doc for class not found error. See the doc.
- Update troubleshooting doc for build failed error. See the doc.
- Show Run/Debug buttons when hover on a main method. #657.
- Debugger just broken with git bash as the default shell on Windows. #642.
- [Mac] Failed to launch debuggee in terminal with TimeoutException. #637, #651.
- Pop an error message when click ⚡ HCR button in the Run mode. PR#665.
- Don't escape single quote of the program args. PR#668.
- Add menu entries to
Run
andDebug
a Java application when you right click a Java file in file explorer or opened editor. #626.
- Remove hard dependency of redhat.java. PR#617.
- Change the default console to integrated terminal. #605.
- Java language server is activated by mistake when debugging a non-Java project. #238.
- [Windows]
integratedTerminal
console does not showing unicode characters. #524. - Contribution from pi1024e: Fix UI typos. PR#630.
Thank pi1024e for contribution.
- Fix: Adding wrong jar version to the classpath. #566.
- Fix: Adding wrong classpath at runtime for multi modules maven projects. #584.
- Contribution from tom-shan: Should break earlier when destroying temporary launch file. PR#280.
Thank tom-shan for contribution.
- Add a debug toolbar button to apply the changed classes to the running application. #559.
- Show toString() values in Variable window and hover tooltip. #315, #364.
- Add a global user setting
java.debug.settings.console
to specify the default console to launch your program. PR#594.
- Fix: The debug toolbar doesn't close after the program running in external terminal exits. #582.
- Fix: Cannot stop the debugging process automatically in attach mode. java-debug#273.
- Enable "Logical Structure" view for Map and Collection variables. #227.
- Add the source hyperlinks for the stack traces in the Debug Console output. #490, #506.
- Automatically add
--enable-preview
to vmArgs when necessary. #553.
- Disable
java.debug.settings.showStaticVariables
by default to not show the static fields.
- Fix: Debug Console does not support autocomplete when a .class file is open. #535.
- Popup the exception details via a UI widget when an exception breakpoint is hit. #522.
- Add a new debug configuration
shortenCommandLine
to fix the issue "CreateProcess error=206, The filename or extension is too long". #110.
- Provide Chinese localized settings page for Java debugger, including launch.json configuration and user settings. #472, #477.
- Add new user settings
java.debug.settings.forceBuildBeforeLaunch
to control whether to build the workspace before Run/Debug. #462. - F5 will auto launch the current Java file if
mainClass
in launch.json is set to the variable${file}
. #431
- Simplify generated launch.json. #476.
- Remove the emoji before Run/Debug CodeLens. #475.
- Use
vscode.open
api instead ofopn
library. #479.
- Fix the main class isn't unique issue. #420.
- Contribution from Thad House: Add new user settings
java.debug.settings.enableRunDebugCodeLens
to enable/disable Run|Debug Code Lenses on main methods. #464. - Contribution from Julien Russo: Add italian translation for extension configuration. PR#463.
Thank Thad House and Julien Russo for contribution.
- Fix: Code Lenses for Run/Debug links on main methods don't show up immediately. #438.
- Fix: It throws "ConfigError: 'mymodule/App' is not a valid class name." for java 9 program. #437.
- Fix: Cannot run from src/test anymore. #413.
- Fix: It throws InvalidStackFrameException during evaluating on conditional breakpoint. #369.
- Fix: The launch command for internalConsole is different from integratedTerminal. #440.
- Use code lens to run java program in a much simpler way. #375.
- Make args/vmArgs accept an array. #389.
- Make mainClass accept variables. #85.
- Fix: Still include test classes in classpaths when auto resolve maven project. #378.
- Fix: Duplicate class path during launching. #370.
- Fix: Update Active Editor oct icon to file instead of clock. #403.
- Fix: Launching the debuggee with the same JDK as java language server instead of JRE. #366.
- Fix: Avoid pop up error window many times for logpoints in a loop. #360.
- Fix: Debug buttons disabled. #411
- Fix: StepResponse/ContinueResponse should be sent before StoppedEvent. java-debug#134
- Fix: Runtime scope class path entries are missing. #402.
- Fix:
env
config in launch.json not respected. #393.
- Start without debugging. See #351.
- Add the validation to mainClass and projectName before launching. See #355.
- Add "Learn More" link jumps to the associated troubleshooting paragraph #360.
- Put recently used main class in the top #350.
- Enable evaluation for hovers #297.
- Distinguish user errors and system errors #288.
- Fix: vulnerabilities issue PR#356.
- Fix: NPE for CompletionsProvider PR#206.
- Fix: Debugger slow when watching variables #305.
- Fix: Should not include test classes in classpath #111.
- Add a troubleshooting page for common errors. See the troubleshooting guide.
- Build and publish the Java Debug Server plugin as p2 artifacts. See PR#191, PR#192.
- Auto select Java Debugger for .java file. See PR#329.
- Improve the launch.json auto-generation UX. See PR#342.
- Improve the logger coverage for the error response. See PR#190.
- Fix the attach error in JDK 10. See PR#187.
- Fix the Java Debug Server plugin build error in JDK 10. See PR#194.
- Add support for Logpoint. The minimum compatible VS Code version is 1.22. See the feature request #272
- Contribution from LunarArcanus: Fix the grammar issue in README. See PR#306.
- Fix the project's build errors in JDK 9/10. See PR#178
- Support auto-complete feature in debug console view. See the feature request #237
- Fix the ObjectCollectedException when enabling ExceptionBreakpoint. See Issue #182
- Fix the issue #277 that the debugger doesn't stop on caught/uncaught exceptions. See PR #172
- Fix the issue #273 that Chinese characters directory will cause messy code during stack trace's source looking up. See PR #170
- Support restart frame. See PR#160
- Enable hot code replace by default. See PR#263
- Wait for building successfully before launch debug session. See PR#257
- Automatically detect projectName when only one main class or project available. See PR#164
- Support conditional breakpoints. See PR#153, PR#154, PR#156
- Support prompting user for program arguments. See PR#245
- Fix the unsupported breakpoint at method entry/exit issue. See PR#129
- Fix the issue when the projectName is not specified, the expression evaluation doesn't work. See PR#156
- Fix VMDisconnectionException in HCR. See PR#150
- Support hot code replace. See PR#225
- Support step filters when stepping. See PR#155
- Support expression evaluation. See PR#126, PR#131
- Publish the binaries to the maven central repository. See PR#132
- Adopt new VSCode 1.19.0 debug activation events. See PR#196
- Looking up the stack frame's associated source file from source containers to improve searching perf. See PR#127
- Add
stopOnEntry
andconsole
options for launch.json. See PR#177 - Support console input by launching the program in the integrated/external terminal. See PR#122
- Add debugging settings:
java.debug.settings.showHex
,java.debug.settings.showStaticVariables
,java.debug.settings.showQualifiedNames
,java.debug.settings.maxStringLength
. See README for details - Support project scope when resolving multiple-root project. See PR#174
- Fix single file build issue. See Issue#167
- Fix perf issue when debugging with "stopOnEntry". See PR#115
- Fix the unable to start debugging issueIssue#146
- Support debugging java 9 project. See Issue#47
- Support debugging standalone java file. See Issue#94
- Support "cwd" and "env" in launch.json. See Issue#12, Issue#75
- Build workspace before starting debugger. See Issue#32
- Show progress when initializing the launch.json. See PR#106
- Get debug settings from VSCode user preferences. See PR#135,PR#94
- Fix perf issue on getting locations of breakpoint. See Issue#49
- Show warning message when the debugger and the debuggee run in the different versions of JVMs. See Issue#30
- Automatically resolve the main class during launching. See Issue#9
- Fully support external source files together with the changes from VSCode. See PR#58
- Adopt the new DebugConfigurationProvider protocol of VS Code. See PR#87
- Display the function names in the format of ClassName.MethodName(Parameter List...).. See PR#73
- Improve the call stack display info for the files without sources. See PR#72
- Fix the inconsistent URI issue when set breakpoint request. See PR#84
- Avoid two stopped events for step and breakpoint. See Issue#14
- Fix the issue that JDT search might return multiple results from the same project. See Issue#21
- Avoid send error messages after debugger adapter stopped. See PR#75
- Fix several exception cases. See PR#64, PR#67, PR#74
- Launch/Attach
- Breakpoints
- Exceptions
- Pause & Continue
- Step In/Out/Over
- Variables
- Callstacks
- Threads
- Debug console