调试时出现错误“插件是用不同版本的包构建的”失败

Failed in error “plugin was built with a different version of package” while debugging

我构建了我的 .so 文件:

go build -buildmode=plugin -o test.so

和运行用Goland调试,然后我得到错误:

Error running agent: could not initialize input inputs.plugin_input: plugin.Open("./plugins_lib/test1"): plugin was built with a different version of package runtime/internal/sys

但我可以在我的终端中构建我的主程序,它会运行良好。

该插件应该使用与主应用程序相同的标志进行编译。

如果应用程序已经使用 IDE 编译,则将 -gcflags="all=-N -l" 添加到上面的 go build ... 命令。

go build -buildmode=plugin -gcflags="all=-N -l" -o test.so

另外,如果IDE是Goland,在Goland的调试控制台可以找到主程序的构建命令。