ホームページ >バックエンド開発 >Golang >非ローカル Go パッケージの場合、「go install」が「local import」エラーで失敗するのはなぜですか?

非ローカル Go パッケージの場合、「go install」が「local import」エラーで失敗するのはなぜですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-24 20:05:12620ブラウズ

Why Does

Go の非ローカル パッケージでのローカル インポート

特定のファイル構造を操作する場合、使用の影響を理解することが重要です非ローカル パッケージ内のローカル インポート。

次の点を考慮してください。シナリオ:

  • ファイル構造:

    .
    ├── bin
    │   └── hello
    ├── pkg
    └── src
      └── jacob.uk.com
          ├── greeting
          │   └── greeting.go
          └── helloworld.go
  • GOPATH:/Users/clarkj84/Desktop/LearningGo

実行時コマンド /usr/local/go/bin/go から jacob.uk.com をインストールしますsrc フォルダーで、エラーが発生する可能性があります: local import "./greeting" in non-local package.

説明:
このエラーは、ローカル インポート (例: . /greeting) は、インストールする非ローカル パッケージを指定する場合は許可されません(jacob.uk.com).

解決策:
この問題を解決するには、次のいずれかを実行できます:

  1. 作業ディレクトリを src/ に変更します。 jacob.uk.com にアクセスし、パッケージを指定せずに go install を実行します。
  2. 絶対インポート パスを使用します: import "jacob.uk.com/greeting"

ベスト プラクティス:
一般にローカル インポートの使用は避けることをお勧めします。代わりに、絶対インポート パスを使用して移植性を確保し、潜在的なエラーを回避してください。

以上が非ローカル Go パッケージの場合、「go install」が「local import」エラーで失敗するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。