You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have a project with such a structure:
project/
|-- cmd/
| |-- main.go
|-- service/
| |-- company/
| |-- service.go
|-- repo/
I normally run the project using this command:
go run ./cmd serve
Here. serve is just an argument.
Problematic Scenarios
When placing a breakpoint in a function in service.go, the debugging process fails because the build command is incorrect: go build -o <path-to-executable> -gcflags all=-N -l <path-to>/service/company/service.go
This command is invalid as it attempts to compile a file that does not contain the main function.
Conversely, when navigating to main.go and attempting to debug, the generated build command is also incorrect: go build -o <path-to-executable> -gcflags all=-N -l <path-to>/cmd/main.go
It should instead execute: go build -o <path-to-executable> -gcflags all=-N -l <path-to>/cmd serve
I appreciate any help to fix the problem.
The text was updated successfully, but these errors were encountered:
Current Solution
I have successfully resolved my debugging issue by temporarily injecting the serve keyword into os.Args. Subsequently, I run "Debug Package" from the main.go file, which works as a temporary workaround.
Desired Enhancement
I am seeking a more flexible solution that allows me to run "Debug Package" from any source file, not just restricted to main.go. For instance, I am unable to initiate "Debug Package" from my service.go.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
@amirphl please check if delve.build_flags configuration addresses your use-case.
If it doesn't, I currently don't have the time to implement it but feel free to push a PR in the repo.
I have a project with such a structure:
project/
|-- cmd/
| |-- main.go
|-- service/
| |-- company/
| |-- service.go
|-- repo/
I normally run the project using this command:
go run ./cmd serve
Here.
serve
is just an argument.Problematic Scenarios
When placing a breakpoint in a function in
service.go
, the debugging process fails because the build command is incorrect:go build -o <path-to-executable> -gcflags all=-N -l <path-to>/service/company/service.go
This command is invalid as it attempts to compile a file that does not contain the main function.
Conversely, when navigating to
main.go
and attempting to debug, the generated build command is also incorrect:go build -o <path-to-executable> -gcflags all=-N -l <path-to>/cmd/main.go
It should instead execute:
go build -o <path-to-executable> -gcflags all=-N -l <path-to>/cmd serve
I appreciate any help to fix the problem.
The text was updated successfully, but these errors were encountered: