亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

GoLang 是否使用保留文件名?

GoLang 是否使用保留文件名?

Go
繁星coding 2022-10-17 17:13:37
在 CI/CD 管道中,我們有一個 Go 腳本,它在實際構建我們的可交付工件之前進行一些預處理。如果我將腳本命名為 main.go,這在 GoLang 世界中是犯規還是可以?我不明白是否有任何與腳本的實際文件名相關的命名空間問題。我知道 main.go 是腳本,main_test.go 是單元測試,所以我很謹慎并尋求指導。例如,如果我從 shell (MacOS bash) 執行以下命令: go test 這將執行 main.go 腳本的單元測試,這讓我相信 main 是某種保留文件名。不過,我很容易出錯。想法?
查看完整描述

1 回答

?
千巷貓影

TA貢獻1829條經驗 獲得超7個贊

文件名main.go并不特殊。

Go 檢測到一個文件是測試的一部分,因為它以 結尾_test.go,并檢測到一個包是二進制文件(而不是庫),因為包名是main(換句話說,它以 開頭package main)。您可以使用main.go在庫中命名的文件。

您可以在源代碼中go/build查看go build在文件中查找的內容。它只檢查_test后綴,這里:

https://cs.opensource.google/go/go/+/refs/tags/go1.17.3:src/go/build/build.go;l=895;drc=deb3403ff52b8833df6c4e2f82cbdddeb13573dd

isTest := strings.HasSuffix(name, "_test.go")


查看完整回答
反對 回復 2022-10-17
  • 1 回答
  • 0 關注
  • 83 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號