9

I write a Java method in JShell and now I want to debug it. I would like to set breakpoints or at least step through an execution line-by-line. Does JShell have these debugging abilities?

Naman
  • 23,555
  • 22
  • 173
  • 290
ChaimKut
  • 2,715
  • 2
  • 34
  • 59

2 Answers2

8

Just to clarify further, from the JEP: The Java Shell (Read-Eval-Print Loop) itself, the Non-Goals states :

Out of scope are graphical interfaces and debugger support. The JShell API is intended to allow JShell functionality in IDEs and other tools, but the jshell tool is not intended to be an IDE.

Naman
  • 23,555
  • 22
  • 173
  • 290
1

There is some undocumented /debug command (Jshell in Java 11). After /help /debug command you can see:

jshell> /help /debug
  Display debugging information for the jshell tool implementation.
  0: Debugging off
  r: Tool level debugging on
  g: General debugging on
  f: File manager debugging on
  c: Completion analysis debugging on
  d: Dependency debugging on
  e: Event debugging on

Notice, if you write /help only there is no information about /debug command.

Out of Jshell there is jdb tool for debug.

zemiak
  • 92
  • 4
  • 1
    Looks like it is intended for debugging the JShell tool itself, not your own personal code that you're running in JShell. – ChaimKut Jan 22 '19 at 11:33