将“生成”更改为运行脚本的目录吗?

时间:2017-06-22 09:32:28

标签: go

我正在尝试通过多种工具生成一些代码。所以,我写了一个文件data.go为

package main           

//go:generate awk -v OFILE=names.go -f gen_table.awk $HOME/prj/header.h     
//go:generate gofmt -w names.go             
//go:generate ./gen_index_html.sh              

生成的names.go不会自动格式化,因此,我添加了第二行以强制使用正确的格式。而且我认为它随后会运行。 在运行这些命令之前,Go Go会生成跳转到此目录吗?因为脚本gen_index_html.sh只接受当前目录中的工作。

1 个答案:

答案 0 :(得分:4)

the documentation

  

生成器在包的源目录中运行。

因此,无论使用generate运行的命令都将在与包含generate指令的文件相同的目录中运行。

一个文件中的多个生成指令以源代码顺序一次执行一个。