新聞中心
Python 或者 Lua 語(yǔ)言可以在不輸出二進(jìn)制的情況下,將代碼使用虛擬機(jī)直接執(zhí)行。Go語(yǔ)言雖然不使用虛擬機(jī),但可使用
go run 指令達(dá)到同樣的效果。

go run 命令會(huì)編譯源碼,并且直接執(zhí)行源碼的 main() 函數(shù),不會(huì)在當(dāng)前目錄留下可執(zhí)行文件。
下面我們準(zhǔn)備一個(gè) main.go 的文件來(lái)觀察
go run 的運(yùn)行結(jié)果,源碼如下:
package main
import (
"fmt"
"os"
)
func main() {
fmt.Println("args:", os.Args)
}
這段代碼的功能是將輸入的參數(shù)打印出來(lái)。使用
go run 運(yùn)行這個(gè)源碼文件,命令如下:
$ go run main.go --filename xxx.go
args: [/tmp/go-build006874658/command-line-arguments/_obj/exe/main--filename xxx.go]
go run 不會(huì)在運(yùn)行目錄下生成任何文件,可執(zhí)行文件被放在臨時(shí)文件中被執(zhí)行,工作目錄被設(shè)置為當(dāng)前目錄。在
go run 的后部可以添加參數(shù),這部分參數(shù)會(huì)作為代碼可以接受的命令行輸入提供給程序。
go run 不能使用“go run+包”的方式進(jìn)行編譯,如需快速編譯運(yùn)行包,需要使用如下步驟來(lái)代替:
- 使用
go build生成可執(zhí)行文件。 - 運(yùn)行可執(zhí)行文件。
文章題目:創(chuàng)新互聯(lián)GO教程:gorun命令——編譯并運(yùn)行
標(biāo)題網(wǎng)址:http://fisionsoft.com.cn/article/coecges.html


咨詢
建站咨詢
