Go 모듈(module)

모듈(module)

모듈 환경에서 개발하려면 다음과 같이 한다. go mod init 명령를 실행하면, 현재 디렉터리에 go.mod 파일이 생성된다.

$ mkdir hello
$ cd hello
$ go mod init hello
$ vi main.go

프로그램을 만든다.

package main

import "fmt"

func main() {
    fmt.Println("Hello world!")
}

프로그램을 실행한다.

$ go run .
Hello world!

공개된 모듈을 이용하려면 아래와 같이 입력한다. 모듈은 환경 변수 GOPATH 디렉터리(기본값은 $HOME/go)에 저장됩니다.

% go get golang.org/x/example
go: downloading golang.org/x/example v0.0.0-20220412213650-2e68773dfca0
go: added golang.org/x/example v0.0.0-20220412213650-2e68773dfca0

프로그램에서 이를 이용해 보자. 기존에 만든 main.go를 아래와 같이 수정한다.

package main

import "fmt"
import "golang.org/x/example/stringutil"

func main() {
    fmt.Println(stringutil.Reverse("Hello world!"))
}

실행해 본다.

$ go run .
!dlrow olleH

import로 아래와 같이 패키지 별칭을 지정할 수 있다. 이렇게 하면 패키지 이름이 중복되는 문제를 피할 수 있다.

import (
    "fmt"
    gstr "golang.org/x/example/stringutil"
)



최종 수정 : 2023-03-26