正如标题所说,下载模块依赖项后是否可以生成代码(使用 //go:generate
之类的东西)?
具体来说,假设有一个存储库 example.com/protobuf
,其中包含一些 .proto
文件和一些用于生成绑定(bind)的 .sh
脚本在不同的语言中,加上一个 go.mod
因此它可以用作 go 的依赖项,如下所示:
module example.com/application
go 1.18
require (
example.com/protobuf v1.0.0
)
但是,生成的 .go
文件不包含在此存储库中,它们必须使用 .sh
脚本之一生成,因此如果您尝试此操作,您会收到类似 module example.com/protobuf@latest found (v1.0.0), but does not contains package example.com/protobuf/foo
有没有办法解决这个问题而不诉诸例如。 git 子模块?
最佳答案
不,出于明显的安全原因,这是不可能的。
关于go - 下载后可以在模块中生成代码吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72869852/