When using C# in Visual Studio I always run with exception breakpoints set to "stop on thrown execption", regardless if the exception is being handled or not.
This is because .NET code in general reserves throwing exceptions for exceptional cases. This functionality allows me to catch a NUMBER of issues in code quality, and I very much miss this in Java !
Unfortunately, java developers are not as lucky as .NET, because some java functionality (classloaders being notorius!) uses exceptions for fairly
I quiet often use the class filters to exclude some of the standard offenders, but unfortunately I use maven (which forward generates idea projects and I lose all the debugger settings!), and there are others I am working together with and I would essentially like to have a project shared set of class excludes.
So I am missing one or more of the following features:
- @DebuggerDoNotStopOnException(java.lang.ClassNotFoundException) (or idea-specific annotation)
Essentially allows the debugger to ignore a specified exception even if it matches an exception breakpoint. Global setting should be able to ignore this annotation. Should apply for this method and any invoked methods.
- An easy way to add a filter for the current class/method when the debugger has stopped somewhere and I am quite sure it doesnt matter.
- Method parameter filter. Allow me to ignore exceptions occurring when an input parameter equals a given value. (I can live without this one ;)
- Filter on "Exception breakpoints" tab that would allow me to ignore any exception occurring when a given class/method is on the callstack.
I think the annotation would be the "best" thing, but I also think the method and parameter value aspect is very important.
I am fairy sure a smart lot like you guys could extend/improve my list, and any suggestions on how I can attain this functionality would be welcome !