安裝go后,我們一般會設置好GOROOT和GOPATH環(huán)境變量,但是有時候因為實際工作中項目結構復雜,設置的GOPATH不能滿足需要時,可以在cmd設置臨時的GOPATH;
很多IDE,比如IDEA也可以設置全局的GOPATH和臨時的GOPATH,但是編譯可執(zhí)行文件可能有些復雜或者通過IDE編譯或者運行會出現(xiàn)app.conf配置文件加載不到的情況,這個坑我遇到過。
故通過命令的方式生成go的可執(zhí)行文件。
- 比如項目結構是這樣:
由于依賴了github.com里的beego,所以要加github.com的上級目錄到GOPATH。
1. 打開cmd命令窗口,用命令設置要編譯包以及依賴包所在路徑的環(huán)境變量,即GOPATH(該設置只對該窗口生效):
set GOPATH=E:ProgrammerRouteGoDevelopment
2.然后設置操作系統(tǒng):
- 生成windows的可執(zhí)行文件:
set GOOS=windows
- 生成linux的可執(zhí)行文件:
set GOOS=linux
3.然后在src目錄下執(zhí)行go install
go install sayHello
沒有報錯的話,會在GOPATH下生成bin和pkg目錄,可執(zhí)行文件在bin目錄下,如圖:
利用beego1.7.0之后的版本,用IDE運行go工程也加載不到app.conf的配置,利用go install也加載不到;
用go run main.go可以加載app.conf,用bee工具也可以加載到。