Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual Studio可以调试Go插件吗?_Go_Visual Studio Code - Fatal编程技术网

Visual Studio可以调试Go插件吗?

Visual Studio可以调试Go插件吗?,go,visual-studio-code,Go,Visual Studio Code,我有一个围棋项目,包括一个命令行工具和一些围棋插件。我有一个构建CLI的构建脚本,然后进入插件目录,并使用-buildmode=plugin选项编译每个插件。我想知道是否可以将launch.json配置为有选择地传递buildmode标志 如果我预先构建插件,然后仅在CLI工具上运行调试器,插件将不会加载,因为它们是“使用不同版本的程序包X构建的” 我在tasks.json中创建了一个任务来调用我的构建脚本,并将该任务添加为调试会话的preLaunchTask,但这并不起作用 #!/bin/ba

我有一个围棋项目,包括一个命令行工具和一些围棋插件。我有一个构建CLI的构建脚本,然后进入插件目录,并使用
-buildmode=plugin
选项编译每个插件。我想知道是否可以将
launch.json
配置为有选择地传递
buildmode
标志

如果我预先构建插件,然后仅在CLI工具上运行调试器,插件将不会加载,因为它们是“使用不同版本的程序包X构建的”

我在
tasks.json
中创建了一个任务来调用我的构建脚本,并将该任务添加为调试会话的
preLaunchTask
,但这并不起作用

#!/bin/bash
set -x 
go build ./cmd/...
cd plugins
for DIR in `find . ! -path . -type d`
do
    go build -buildmode=plugin $DIR/*.go
done

如果要将调试状态添加到.so文件中

go build -gcflags "all=-N -l" -x -v -buildmode=plugin -o plugin/plugin.so plugin/plugin.go
但是,当您想要在生产中构建时,请忽略这些选项

go build -buildmode=plugin -o plugin/plugin.so plugin/plugin.go
更多细节