第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

構建一個多可執(zhí)行的 Go 項目

構建一個多可執(zhí)行的 Go 項目

Go
哆啦的時光機 2023-05-04 16:56:17
我正在嘗試用 Go 構建一個微服務架構項目。我目前使用的是支持模塊的 Go 1.11,所以我將根目錄放在GOPATH.如果我正確理解了微服務架構概念,盡管我的微服務需要獨立,但它們可以共享依賴關系(而且我沒有看到另一種做事的方式,是嗎?)下面是我的目錄結構:.├── go.mod├── lambda│   └── account_create│       └── main.go├── readme.md└── types    ├── account.go    ├── location.go    ├── order.go    ├── pricing.go    ├── product.go    └── types.go現(xiàn)在我期望的行為是能夠運行go build lambda/account_create并獲得具有該功能的可執(zhí)行文件,這樣我就可以將它提供給相應的 AWS Lambda 函數(shù)。但是,當我運行命令時,我得到:can't load package: package lambda/account_create: unknown import path "lambda/account_create": cannot find module providing package lambda/account_create請向我解釋為什么這不起作用,并給我一些關于這樣的項目應該是什么樣子的建議。非常感謝!編輯這是我的lambda/account_create/main.go文件內(nèi)容:package account_createimport (    "fmt"    "roasted.ro/pkg/types")func main() {    account := types.UserAccount{Name: "Victor"}    fmt.Printf("Welcome %s", account.Name)}
查看完整描述

1 回答

?
素胚勾勒不出你

TA貢獻1827條經(jīng)驗 獲得超9個贊

要回答你問題的后半部分(因為前半部分更多是關于偏好),你需要做:

go?build?./lambda/account_create

注意./.?go build接受包名或路徑。如果您不在路徑前添加一個./,它會假定您為其提供了一個包名。

編輯main:如果你想要一個可執(zhí)行文件,包必須是。根據(jù)文檔,您始終必須使用package main構建可執(zhí)行文件的項目:

可執(zhí)行命令必須始終使用package main.

編輯:我將在布局上添加一些意見:

考慮將項目的哪些部分導出到其他 Go 項目。這意味著有人可以導入您的包并期望獲得價值,并且不會在您的更改時破壞他們的代碼。

那應該在一個github.com/you/pkg/somepath包中或只是github.com/you/somepath.

其他任何東西(主包除外)都應該在/internal包下。

我通常/cmd/myexecurable1?/cmd/myexecurable2為每個可執(zhí)行文件制作一個等等。


查看完整回答
反對 回復 2023-05-04
  • 1 回答
  • 0 關注
  • 123 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號