Vscode-java-debug: Break on exception in Java for “just my code”

Created on 6 Feb 2020  ·  6Comments  ·  Source: microsoft/vscode-java-debug

Environment
  • Operating System: Win10
  • JDK version:
  • Visual Studio Code version: 1.41.1
  • Java extension version: 0.55.1
  • Java Debugger extension version: 0.24.0
Question

How can I configure VS Code to only break on an exception in "just my code"? I've messed around w/ the Uncaught Exceptions & Caught Exceptions but they are not scoped to my code.

Additional Notes

We've added support for exception configuration to the debug protocol (microsoft/vscode-debugadapter-node#64). Source

Something like Visual Studio -> Enable or disable Just My Code.

question feature request

Most helpful comment

In the new 0.27.0, when you want to break on exception for "Just My Code", you can add the following settings for that.

    "java.debug.settings.exceptionBreakpoint.skipClasses": [
        "$JDK", // Skip the JDK classes from the default system bootstrap classpath, such as rt.jar, jrt-fs.jar.
        "$Libraries", // Skip the classes from application libraries, such as Maven, Gradle dependencies.
        // "java.myPackage.myClass"
    ],

All 6 comments

@spottedmahn Thanks for reaching out.

Unfortunately, the debugger does not support the exact feature you requested. However, it does support something similar. Please check out the stepFilters option, which can be specified in launch configurations to avoid breaking in certain classes.

I also see "Just My Code" a nice improvement for the debugger. Let's track it in longer-term @testforstephen

Thanks @akaroml for the reply!

Please check out the stepFilters option, which can be specified in launch configurations to avoid breaking in certain classes.

That helped but I'm still left w/ a lot of undesired breaks due to Unknown source and stepFilters can't help w/ that 🤔:

It (stepFilters) cannot help you to ignore the Unknown Source source

Thanks @akaroml for the reply!

Please check out the stepFilters option, which can be specified in launch configurations to avoid breaking in certain classes.

That helped but I'm still left w/ a lot of undesired breaks due to Unknown source and stepFilters can't help w/ that 🤔:

It (stepFilters) cannot help you to ignore the Unknown Source source

I agree that Just My Code will improve the experience. But it's not an easy piece and we'll plan it in longer term.

In the new 0.27.0, when you want to break on exception for "Just My Code", you can add the following settings for that.

    "java.debug.settings.exceptionBreakpoint.skipClasses": [
        "$JDK", // Skip the JDK classes from the default system bootstrap classpath, such as rt.jar, jrt-fs.jar.
        "$Libraries", // Skip the classes from application libraries, such as Maven, Gradle dependencies.
        // "java.myPackage.myClass"
    ],

thanks @testforstephen!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

mojo2012 picture mojo2012  ·  5Comments

James-Oswald picture James-Oswald  ·  3Comments

gcbartlett picture gcbartlett  ·  3Comments

TheSinding picture TheSinding  ·  6Comments

radu-ion picture radu-ion  ·  5Comments