GoLang カスタム パッケージのインポートの問題

王林
リリース: 2024-02-12 21:54:08
転載
915 人が閲覧しました

GoLang カスタム パッケージのインポートの問題

php エディタ Xinyi は、GoLang でよくある問題、つまりカスタム パッケージのインポートの問題を紹介します。 Go 言語開発では、特定の機能を実装するためにカスタム パッケージを使用する必要があることがよくあります。ただし、カスタム パッケージをインポートするときに、パッケージが見つからない、パッケージ名の競合など、いくつかの問題が発生することがあります。この記事では、これらの質問に詳しく答え、開発者がカスタム パッケージのインポートの問題をより適切に処理し、開発効率を向上させるのに役立つ解決策を提供します。

質問内容

golangを学習しているのですが、問題が発生しました。

私は go mod init main を使用して mod ファイルを作成しました

次に、以下に示すようにコントローラーとルーティング フォルダーを作成しました。 リーリー

MOD ファイルでは、モジュールは次のようになります。

モジュールメイン

コントローラをルータにインポートしようとすると、インポート エラーが発生します。

私は次のことを行ってきました。 試してください - 1

リーリー

無効なインポート パス: "$gopath/controllers" 構文

エラーが表示されます 試してみる - 2

リーリー

同じエラーです

試してみる - 3

リーリー

Controller.go

リーリー

router.go

リーリー

このエラーがスローされます。

main/controllers をインポートできません (必須モジュールがパッケージ「main/controllers」を提供していません)

この問題で 3 ~ 4 時間立ち往生しています。誰かがこのコントローラーをルートにインポートする方法を教えてください。

###前もって感謝します。 ######解決######

go.mod

:

を編集してモジュール パスを変更します。

リーリー

インポート パスを変更します:
  1. リーリー
  2. controller.go
(末尾の
    ;
  1. を削除):
リーリー
  1. ディレクトリ contollers の名前を controllers
  2. に変更して、パッケージ名と一致させます (
r
    が欠落しています)。
  1. vendor フォルダーを削除します。

  2. イラスト

    :

  3. main
は go において特別な意味を持っています。

golang仕様:から引用

    完全なプログラムは、
  1. main package という名前の単一のインポートされていないパッケージをそのすべてのインポートされたパッケージと推移的にリンクすることによって作成されます。 main パッケージはパッケージ名 main を持ち、パラメーターを受け取らず値を返さない関数 main を宣言する必要があります。 ドットのないインポート パスは、標準ライブラリと go ツールチェーン用に予約されています。ドキュメント
  2. cmd/go: ドットを含まないモジュール名の保持
を参照してください。

以上がGoLang カスタム パッケージのインポートの問題の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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