# Interface JavaDebugOptions

public interface JavaDebugOptions
Contains a subset of the Java Debug Wire Protocol properties.

Since:
  5.6

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Property<Boolean>`
  `getEnabled()`
  Should the debug agent start in the forked process? By default, this is false.
  `Property<String>`
  `getHost()`
  Host address to listen on or connect to when debug is enabled.
  `Property<Integer>`
  `getPort()`
  The debug port to listen on or connect to.
  `Property<Boolean>`
  `getServer()`
  Should the process listen for a debugger to attach (server) or immediately connect to an already running debugger (client)?
  `Property<Boolean>`
  `getSuspend()`
  Should the process suspend until the connection to the debugger is established?

- ## Method Details

  - ### getEnabled

    @Input Property<Boolean> getEnabled()
    Should the debug agent start in the forked process? By default, this is false.

  - ### getHost

    @Incubating @Optional @Input Property<String> getHost()
    Host address to listen on or connect to when debug is enabled. By default, no host is set.

    When run in `server` mode, the process listens on the loopback address on Java 9+ and all interfaces on Java 8 and below by default. Setting host to `*` will make the process listen on all network interfaces. This is not supported on Java 8 and below. Setting host to anything else will make the process listen on that address.

    When run in `client` mode, the process attempts to connect to the given host and `getPort()`.

    Since:
      7.6

  - ### getPort

    @Input Property<Integer> getPort()
    The debug port to listen on or connect to.

  - ### getServer

    @Input Property<Boolean> getServer()
    Should the process listen for a debugger to attach (server) or immediately connect to an already running debugger (client)?

    In server mode (`server = true`), the process listens for a debugger to connect after the JVM starts up.

    In client mode (`server = false`), the process attempts to connect to an already running debugger.

  - ### getSuspend

    @Input Property<Boolean> getSuspend()
    Should the process suspend until the connection to the debugger is established?