LoginSignup
0
0

More than 1 year has passed since last update.

golangでパッケージを作成してmain.goから読み込んだらエラー

Posted at

go言語を勉強中。
環境Windows10
VSCODE
go 1.17.7

プロジェクト名のディレクトリの下にmain.goを作成して
その下にmylibというディレクトリを作りました。
その中にgoファイルを作成して関数を作り。
main.goでその関数を呼び出そうとしたら以下のエラーなりました。

main.go:4:2: package projectname/mylib is not in GOROOT (C:\Program Files\Go\src\projectname\mylib)

この問題について以下の記事がありました。
[GO言語]GOPATH以外の場所でのimportの挙動について整理

しかし、Go 1.16からGo-Moduleによるプロジェクト構成が推奨されたらしいという記事を発見しました。

cd projectname
go mod init projectname

でモジュールを認識して実行するとこができました。

package main

import (
	"PROJECTNAME/mylib"
	"fmt"
)

と記述すれば、mylibの中のモジュールを読み込んでくれました。

参考:Go 1.16環境構築(Windows)

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