search
LoginSignup
2

More than 1 year has passed since last update.

posted at

updated at

【Go golang】自作パッケージのimport

ハマったので流し書きメモ。

0. 前提

0-1. mainパッケージ

Go言語のプログラムはパッケージ(package)で構成されており、プログラムは main パッケージから開始される。

プログラム実行時の処理開始位置の main パッケージあるいは main 関数を『エントリポイント』と呼ぶ。

0-2. import文

他のパッケージのメンバにアクセスするには、 import 文を使用します。 import 文によって読み込んだパッケージのメンバへのアクセスは、 パッケージ名.メンバ名 という形で行う。

https://go-tour-jp.appspot.com/basics/1
http://cuto.unirita.co.jp/gostudy/post/go-package/

1. import時の注意点

main パッケージが大きくなってきた時、処理を複数の関数あるいはファイルに分割したい。

その時、import文では、 新しく作った独自パッケージへのパスとして、 $GOPATH/src 直下のディレクトリから、パッケージファイル(*.go)の直上のディレクトリまでを指定する 。←これが言いたかっただけ。

※GOPATHとは、開発時の作業ディレクトリのこと。
http://cuto.unirita.co.jp/gostudy/post/gopath/
https://teratail.com/questions/207345

2. Go Modulesについて

現在Go言語を使用したアプリケーション開発の依存関係管理では、基本的にGo Modulesを使うっぽい。

https://qiita.com/momotaro98/items/23fa4356389a7e610acc
https://qiita.com/lp-peg/items/9f7da97d9f7292f16fbc

実際やってみたが、楽で良い。
importするパスは、自分のプロジェクトルートディレクトリ直下のディレクトリ名から、importしたいパッケージの直上のディレクトリまで。

$ go mod init 自分のプロジェクト名
$ go build
$ 自分のプロジェクト名

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
2