.nh .TH "DLV-DAP" "1" "Feb 2024" "Auto generated by spf13/cobra" "General Commands Manual" .SH NAME .PP dlv-dap - Starts a headless TCP server communicating via Debug Adaptor Protocol (DAP). .SH SYNOPSIS .PP \fBdlv dap [flags]\fP .SH DESCRIPTION .PP Starts a headless TCP server communicating via Debug Adaptor Protocol (DAP). .PP The server is always headless and requires a DAP client like VS Code to connect and request a binary to be launched or a process to be attached to. The following modes can be specified via the client's launch config: - launch + exec (executes precompiled binary, like 'dlv exec') - launch + debug (builds and launches, like 'dlv debug') - launch + test (builds and tests, like 'dlv test') - launch + replay (replays an rr trace, like 'dlv replay') - launch + core (replays a core dump file, like 'dlv core') - attach + local (attaches to a running process, like 'dlv attach') .PP Program and output binary paths will be interpreted relative to dlv's working directory. .PP This server does not accept multiple client connections (--accept-multiclient). Use 'dlv [command] --headless' instead and a DAP client with attach + remote config. While --continue is not supported, stopOnEntry launch/attach attribute can be used to control if execution is resumed at the start of the debug session. .PP The --client-addr flag is a special flag that makes the server initiate a debug session by dialing in to the host:port where a DAP client is waiting. This server process will exit when the debug session ends. .SH OPTIONS .PP \fB--client-addr\fP="" host:port where the DAP client is waiting for the DAP server to dial in .PP \fB-h\fP, \fB--help\fP[=false] help for dap .SH OPTIONS INHERITED FROM PARENT COMMANDS .PP \fB--accept-multiclient\fP[=false] Allows a headless server to accept multiple client connections via JSON-RPC or DAP. .PP \fB--allow-non-terminal-interactive\fP[=false] Allows interactive sessions of Delve that don't have a terminal as stdin, stdout and stderr .PP \fB--api-version\fP=1 Selects JSON-RPC API version when headless. New clients should use v2. Can be reset via RPCServer.SetApiVersion. See Documentation/api/json-rpc/README.md. .PP \fB--backend\fP="default" Backend selection (see 'dlv help backend'). .PP \fB--build-flags\fP="" Build flags, to be passed to the compiler. For example: --build-flags="-tags=integration -mod=vendor -cover -v" .PP \fB--check-go-version\fP[=true] Exits if the version of Go in use is not compatible (too old or too new) with the version of Delve. .PP \fB--disable-aslr\fP[=false] Disables address space randomization .PP \fB--headless\fP[=false] Run debug server only, in headless mode. Server will accept both JSON-RPC or DAP client connections. .PP \fB--init\fP="" Init file, executed by the terminal client. .PP \fB-l\fP, \fB--listen\fP="127.0.0.1:0" Debugging server listen address. Prefix with 'unix:' to use a unix domain socket. .PP \fB--log\fP[=false] Enable debugging server logging. .PP \fB--log-dest\fP="" Writes logs to the specified file or file descriptor (see 'dlv help log'). .PP \fB--log-output\fP="" Comma separated list of components that should produce debug output (see 'dlv help log') .PP \fB--only-same-user\fP[=true] Only connections from the same user that started this instance of Delve are allowed to connect. .PP \fB-r\fP, \fB--redirect\fP=[] Specifies redirect rules for target process (see 'dlv help redirect') .PP \fB--wd\fP="" Working directory for running the program. .SH SEE ALSO .PP \fBdlv(1)\fP