gpt4 book ai didi

go - 在vscode-go中,有没有办法运行本地版本的go :generate statements?工具

转载 作者:行者123 更新时间:2023-12-05 04:46:55 24 4
gpt4 key购买 nike

在许多项目中,我有一个 tools/tools.go 文件,它允许我拥有我使用的工具的本地版本 (reference)。

我的代码中还有 go:generate 语句,使用 https://github.com/golang/mock/mockgen 自动生成模拟文件。 .我在项目的 bin 文件夹下有一个本地版本的 mockgen,我可以通过运行类似 PATH=./bin 的东西来生成项目的所有模拟:${PATH} 去生成./....

Vscode-go可以识别代码中的go:generate语句,可以为我们生成代码。

vscode-go generate helper

我想知道是否有办法让 vscode-go 使用我在 bin目录。

通过设置 go.alternateTools,vscode-go 允许我们为扩展使用的工具指定备用路径(即 dlv)。我尝试为 mockgen 配置该选项,但它没有改变任何东西。我的猜测是它不起作用,因为 vscode-go 通过 gopls.generate 运行 mockgen;它不直接运行 mockgen。但这只是一个猜测。

如果我的 $PATH 中没有 mockgen 二进制文件,下面是我得到的错误:

[Info  - 5:44:18 PM] 2021/08/08 17:44:18 xxxxxxx.go:19: running "mockgen": exec: "mockgen": executable file not found in $PATH

operation="generate"

有人知道吗? 😂

编辑:参见@Zyl 的评论 there一个很好的选择。

最佳答案

我今天遇到了同样的问题。找到了这个解决方案,如果将来有人需要它,它对我有用:

export GOPATH="$HOME/go" 
export PATH="$GOPATH/bin:$PATH"

然后运行(在有“go:generate”注释的文件所在的目录下)

go generate

关于go - 在vscode-go中,有没有办法运行本地版本的go :generate statements?工具,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68699272/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com