Set workdir/pwd of go build



是否可以将工作目录设置为不同的路径?

例如,我想从根路径运行go build,但是我的源代码在不同的目录下,我不想将cd放到它。

例如,npm中有--prefix,它就是用于这个目的的。

是的,这是可能的。

go build -o [output file path/name] [source code file path/name]

例如,如果您的源代码文件位于projectdir/code/src/中,并且希望构建并保存输出到projectdir/code/out,则执行以下操作:

$ go build -o projectdir/code/out/main projectdir/code/src/main.go

根据go build文档:

如果指定的输出是一个已存在的目录或以斜杠或结尾反斜杠,那么任何结果可执行文件都将被写入目录。

所以我们上面的构建命令可以重写成这样:

go build -o projectdir/code/out/ projectdir/code/src/main.go

,它将在projectdir/code/out/目录下生成名为main的可执行文件。

详细信息,请运行go help build

不,这在1.19中是不可能的。cd进去就行了

Go 1.20(尚未发布)带来了-C标志,这可能是您想要的。

最新更新