首頁 >後端開發 >Golang >如果沒有GOPATH,如何在Go中匯入本機套件?

如果沒有GOPATH,如何在Go中匯入本機套件?

Linda Hamilton
Linda Hamilton原創
2024-12-17 12:19:25691瀏覽

How Can I Import Local Packages in Go Without GOPATH?

在沒有GOPATH 的情況下導入Go 本地包

在沒有GOPATH 的情況下,導入本地包需要超越傳統方法的解決方案。根據所使用的 Go 版本,有多種選項可用。

使用 Vgo(Go 1.11 及更高版本)

Vgo 是 Go 版本 1.11 及更高版本推薦的依賴管理器。它利用允許自動依賴性解析和版本管理的“模組”系統。要使用vgo:

export GO111MODULE=on  # Enable Go modules
go mod init  # Initialize the module
go mod vendor  # Download and install dependencies
go build  # Build the project

使用Vendor(Go 1.6 到Go 1.10)

Vendor 是一種手動依賴項管理技術,涉及在其中創建「供應商”目錄該項目。外部套件放在這個目錄中,編譯器在編譯時會優先考慮它們。

使用手動匯入(1.6 之前的Go 版本)

對於早期的Go 版本,手動匯入可以透過以下方式實現:

  • 為本機建立子資料夾package.
  • 使用相對路徑導入包,例如import "./package1"。

目錄結構

手動導入,專案目錄結構應類似以下:

myproject/
├── binary1.go
├── binary2.go
├── package1/
│   └── package1.go
└── package2.go

結論結論

不使用GOPATH 匯入本機套件的具體方法取決於所使用的Go 版本。雖然可以使用子資料夾直接匯入,但 Go 模組 (vgo) 或供應商功能提供了更高階的相依性管理功能。

以上是如果沒有GOPATH,如何在Go中匯入本機套件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn