專案目錄結構如何組織,一般語言都是沒有規定。但go語言這方面做了規定,這樣可以保持一致性,做到統
一、規則化比較明確。
1、一般的,乙個go專案在gopath下,會有如下三個目錄:
|--bin其中,bin存放編譯後的可執行檔案;pkg存放編譯後的包檔案;src存放專案原始檔。|--pkg
|--src
一般,bin和pkg目錄可以不建立,go命令會自動建立(如 go install),只需要建立src目錄即可。
對於pkg目錄,曾經有人問:我把go中的包放入pkg下面,怎麼不行啊?他直接把go包的原始檔放入了pkg中。
這顯然是不對的。pkg中的檔案是go編譯生成的,而不是手動放進去的。(一般檔案字尾.a)
對於src目錄,存放原始檔,go中原始檔以包(package)的形式組織。通常,新建乙個包就在src目錄中新建乙個資料夾。
2、舉例說明
比如:我新建乙個專案,myfirst,開始的目錄結構如下:
myfirst--為了編譯方便,增加了乙個install檔案,目錄結構:|--src
myfirst之所以加上這個install.bat,是不用配置gopath(避免新增乙個go專案就要往gopath中增加乙個路徑)|—install.bat
|—src
接下來,增加乙個包:config和乙個main程式。目錄結構如下:
注意,config.go中的package名稱必須最好和目錄config一致,而檔名可以隨便。main.go表示main包,檔名建議為main.go。(注:不一致時,生成的.a檔名和目錄名一致,這樣,在import 時,應該是目錄名,而引用包時,需要包名。例如:目錄為myconfig,包名為config,則生產的靜態包檔案是:myconfig.a,引用該包:import 「myconfig」,使用包中成員:config.loadconfig())
onfig.go和main.go的**如下:
install.bat配置說明:
注:冒號和ok之間不應該有空格。
開啟命令列,找到d:\myfirst目錄,輸入install,執行如下:
執行完之後,生成pkg目錄:
經過反覆重試,install.bat修改如下:
@echo offconfig.go修改如下:setlocal
if exist install.bat goto
okecho install.bat must be run
from
its folder
goto
end: ok
set oldgopath=%gopath%
set gopath=%cd%gofmt -w src
go install myfirst
set gopath=oldgopath
:end
echo finished
package config函式名稱為大寫開頭。func loadconfig()
Go專案的目錄結構
專案目錄結構如何組織,一般語言都是沒有規定。但go語言這方面做了規定,這樣可以保持一致性,做到統 一 規則化比較明確。1 一般的,乙個go專案在gopath下,會有如下三個目錄 bin pkg src 其中,bin存放編譯後的可執行檔案 pkg存放編譯後的包檔案 src存放專案原始檔。一般,bin和...
Go專案的目錄結構
專案目錄結構如何組織,一般語言都是沒有規定。但go語言這方面做了規定,這樣可以保持一致性,做到統 一 規則化比較明確。1 一般的,乙個go專案在gopath下,會有如下三個目錄 bin pkg src 其中,bin存放編譯後的可執行檔案 pkg存放編譯後的包檔案 src存放專案原始檔。一般,bin和...
Go專案的目錄結構詳解
專案目錄結構如何組織,一般語言都是沒有規定。但go語言這方面做了規定,這樣可以保持一致性。1 一般的,乙個go專案在gopath下,會有如下三個目錄 複製 如下 bin pkg src 其中,bin存放編譯後的可執行檔案 pkg存放編譯後的包檔案 src存放專案原始檔。一般,bin和pkg目錄可以不...