Go のパッケージ インポート エラー: 「パッケージ my_prog と main が見つかりました」の解決
Go プログラムをビルドしようとすると、次のような一般的なエラーが発生します。開発者が遭遇したのは「パッケージを読み込めません: パッケージ my_prog: パッケージ my_prog と main が見つかりました。」このエラーは、同じ名前を共有する複数のパッケージとの競合を示しています。
このエラーを解決するには、次の理解が重要です:
Go のパッケージ構造
Go では、コードはパッケージに編成されます。パッケージは、関連する型、関数、変数のセットを定義します。各パッケージは独自のディレクトリに存在する必要があります。
パッケージのインポートと競合
Go でパッケージをインポートするときは、インポート ステートメントでその名前を識別子として指定します。 。現在のディレクトリまたは GOPATH に同じ名前の複数のパッケージがある場合、Go はインポート競合エラーをスローします。
問題のケース
に基づいています。提供されたコード構造では、同じディレクトリに 2 つのパッケージがあります:
で定義されています。Go のインポート メカニズムでは大文字と小文字が区別されます。つまり、main と my_prog は別個のパッケージとみなされます。ただし、my_prog をビルドしようとすると、Go は現在のディレクトリで両方のパッケージを見つけて、インポート競合エラーを発生させます。
解決策
このエラーを解決するには、以下が必要です。各パッケージが独自のディレクトリに存在することを確認するには:
これらの変更を加えると、my_prog パッケージを正常にビルドできるようになります。
以上がGo プログラムが「パッケージ my_prog と main が見つかりました」というメッセージで失敗するのはなぜですか? どうすれば修正できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。