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

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

多個 go 項(xiàng)目并共享一個供應(yīng)商目錄(在 1.11 之前的 go 中)

多個 go 項(xiàng)目并共享一個供應(yīng)商目錄(在 1.11 之前的 go 中)

Go
慕后森 2023-05-04 17:18:38
我已經(jīng)開始學(xué)習(xí)go (1.7.4) 并且有一個當(dāng)前生成兩個可執(zhí)行文件的項(xiàng)目。我有一個目錄結(jié)構(gòu),如下所示,遵循標(biāo)準(zhǔn)的 go 布局:GOPATH=`pwd`binsrc/src/<project1>src/<project1>/vendorsrc/<project1>/glide.yamlsrc/<project2>src/<project2>/vendorsrc/<project2>/glide.yamlpkg/項(xiàng)目 1 和項(xiàng)目 2 共享很多依賴項(xiàng)。 有沒有辦法在 project1 和 project2 之間共享供應(yīng)商目錄并仍然固定版本以確保可重現(xiàn)的構(gòu)建?我不想為每個項(xiàng)目復(fù)制 glide.yaml 和 vendor 目錄,因?yàn)樗鼤箻?gòu)建膨脹并違反 DRY。pkg 目錄是執(zhí)行此操作的明顯方法,但與供應(yīng)商不同,我沒有像 glide 這樣的依賴管理器工具來確保使用特定版本(另請參閱我的相關(guān)問題)。一個可能相關(guān)的問題是這個項(xiàng)目是如何組織的。我相信去將每個項(xiàng)目子目錄映射到單個 github 存儲庫會更常規(guī)。但是,對于我的項(xiàng)目,我想構(gòu)建至少兩個可執(zhí)行文件。我知道你可以通過使用不同的包名稱來做到這一點(diǎn),但它會混淆 go 和 glide。我努力使它在單個項(xiàng)目下工作,并決定/發(fā)現(xiàn)使用標(biāo)準(zhǔn)的 go 布局并在兩個層次上工作更容易。例如,一個優(yōu)點(diǎn)是子目錄中的“go build”等無需命名包即可工作。我還可以讓我在頂層的構(gòu)建、測試和打包機(jī)制在所有項(xiàng)目上運(yùn)行,并將我的 go 環(huán)境與其他任何環(huán)境分開。這些程序不夠復(fù)雜,無法保證單獨(dú)的 git 存儲庫(即使作為子模塊)。
查看完整描述

2 回答

?
開滿天機(jī)

TA貢獻(xiàn)1786條經(jīng)驗(yàn) 獲得超13個贊

應(yīng)該可以有一個共享的供應(yīng)商目錄。我這樣做的方式涉及 Go 1.11 和稱為模塊的新 Go 功能。但我很確定它應(yīng)該與供應(yīng)商和工具一起工作,比如 glide 和 dep。要使用 dep/glide,你的目錄結(jié)構(gòu)可能看起來像這樣

- src
  - projects
      - project1
      - project2
      - vendor
      - Glide.yaml

您可以使用項(xiàng)目文件夾go build -o p1 project1/*.go或使用單個項(xiàng)目文件夾構(gòu)建它go build

相同的結(jié)構(gòu),但在 GOPATH 之外將適用于 Go 1.11 模塊。您必須將 GO111MODULE 變量設(shè)置為“on”或“auto”。請注意,go modules 將依賴項(xiàng)存儲在其他位置,并在需要時在構(gòu)建過程中自動下載它們。

注:glide github page 推薦切換到dep作為更官方的工具

編輯:剛剛用 dep 測試了它。這個對我有用。


查看完整回答
反對 回復(fù) 2023-05-04
?
aluckdog

TA貢獻(xiàn)1847條經(jīng)驗(yàn) 獲得超7個贊

它允許您修復(fù)所用包的版本:

module github.com/my/thing


require (

? ? github.com/some/dependency v1.2.3

? ? github.com/another/dependency/v4 v4.0.0

)


查看完整回答
反對 回復(fù) 2023-05-04
  • 2 回答
  • 0 關(guān)注
  • 145 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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