ホームページ > バックエンド開発 > Golang > ローカル Go パッケージを移動する際のインポート エラーを修正するにはどうすればよいですか?

ローカル Go パッケージを移動する際のインポート エラーを修正するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-27 11:11:11
オリジナル
543 人が閲覧しました

How Do I Fix Import Errors When Moving Local Go Packages?

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

ローカル パッケージのインポートは、Go でコードを整理およびモジュール化する上で不可欠な側面です。ただし、ローカル パッケージを別の場所に移動すると、エラーが発生する可能性があります。この記事では、2 つの一般的な問題に対処し、Go でローカル パッケージをインポートするための解決策を提供します。

エラー 1: 非ローカル パッケージでのローカル インポート

エラー メッセージ「」が発生した場合local import "./common" in non-local package" の場合は、インポート ステートメントが正しい構文であることを確認してください。 Go は、インポートの開始パスを $HOME/go/src とみなします。これは、import ステートメントに $HOME/go/src を基準としたローカル パッケージへの相対パスを含める必要があることを意味します。

この場合、ローカル パッケージは /home/me/go/src/myapp にあります。このエラーを解決するには、インポート ステートメントを次のように更新します。

import (
    "log"
    "net/http"
    "myapp/common"
    "myapp/routers"
)
ログイン後にコピー

エラー 2: パッケージが見つかりません

「パッケージが見つかりません」というエラーが表示された場合は、 Go インポート パスが正しく構成されていることを確認します。デフォルトでは、Go は $GOROOT と $GOPATH でパッケージを検索します。インポート パスは、これらのディレクトリ内のローカル パッケージの相対パスと一致する必要があります。

この例では、ローカル パッケージは $GOROOT または $GOPATH にありません。これを修正するには、/home/me/go/src を含むように環境変数 GOPATH を設定して、ローカル パッケージ ディレクトリを含むように Go ワークスペースを構成します。これを行うには、シェル設定ファイル (.bashrc など) に次の行を追加します。

export GOPATH=$GOPATH:/home/me/go/src
ログイン後にコピー

以上がローカル Go パッケージを移動する際のインポート エラーを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート