LoginSignup
0
0

More than 5 years have passed since last update.

Go1.11でカスタムパッケージを追加する方法

Last updated at Posted at 2019-02-07

Go1.11ではModulesという機構が追加され、go mod コマンドでmodulesを管理することができる。
もうGoPath直下にディレクトリを切らず、どこでも好きなところに置けます。

Modulesの使い方は様々な記事で紹介されていますが、
1.export GO111MODULE=on
2.go mod init

これだけです。
あとは、go buildでコンパイルすればプログラム内のimportに記載されているパッケージが自動的にインストールされて、go.modgo.sumに追記されます。

ちなみにバージョン等を指定したい場合は下記の場所を書き直せばいいぽい

go.mod
require (
    //ここ? 
    github.com/XXXXX
)

んで、フォルダを切って新しいパッケージを宣言した場合、相対パスでimportできなかった

|-main.go    //package xxx
|-sub
   |-sub.go  //package sub
sub.go
//パッケージ名
package sub

import (
  ...

このような場合、go.modにはmoduleにメインのパッケージ「XXX」と書き、そこからの相対パスをimportに使用する。

go.mod
//mainのパッケージ名
module XXX
require (
    github.com/XXXXX
)
main.go
package xxx

import (
  "xxx/sub"
)

当たり前のことだが、カスタムパッケージ?ってググってもあまりGo1.11で出てこなかったので覚書程度に記載しておきます。

0
0
0

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
  3. You can use dark theme
What you can do with signing up
0
0