是否可以将工作目录设置为不同的路径?
例如,我想从根路径运行go build
,但是我的源代码在不同的目录下,我不想将cd
放到它。
--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标志,这可能是您想要的。