首頁 >後端開發 >Golang >部署到 Google App Engine 時如何解決 Go 導入衝突?

部署到 Google App Engine 時如何解決 Go 導入衝突?

Linda Hamilton
Linda Hamilton原創
2024-12-20 12:12:14730瀏覽

How to Resolve Go Import Conflicts When Deploying to Google App Engine?

解決 App Engine 導入衝突

在 Google App Engine 上部署 Go 應用程式時,由於服務和測試期間的導入路徑不同,可能會出現衝突導入。

問題描述

要解決這些問題,請考慮以下內容options:

選項1:修改導入路徑(建議)

  • 在主套件(例如main.go)中,刪除來源儲存庫前綴子資料夾套件匯入。例如,使用 lib1,而不是 github.com/markhayden/SampleIssue/lib1。

選項 2:外部化相依性

  • 移動子-資料夾包到主專案來源以外的獨立專案目錄。
  • 使用完整導入路徑導入這些相依性(例如 github.com/MarkHayden/SampleIssueDeps/lib1)。

實作詳細資訊

選項1:

  • 例如,在 main.go中:

    import (
      "fmt"
      "github.com/markhayden/SampleIssue/lib1" // Remove "github.com/markhayden/SampleIssue/"
      "github.com/markhayden/SampleIssue/lib2" // Remove "github.com/markhayden/SampleIssue/"
      "net/http"
    )

選項2:

  • 假設依賴項已移至專案中SampleIssueDeps 在主專案目錄之外。
  • 在main.go 中:

    import (
      "fmt"
      "github.com/MarkHayden/SampleIssueDeps/lib1"
      "github.com/MarkHayden/SampleIssueDeps/lib2"
      "net/http"
    )

優點和注意事項

兩個選項都解決了導入服務和測試期間。選項 1 更簡單並保持導入約定,而選項 2 允許更模組化的依賴關係管理。

以上是部署到 Google App Engine 時如何解決 Go 導入衝突?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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