개인 패키지를 import 할때 몇가지 이슈가 자주 발생하여 개인환경을 기준으로 정리했음.
1. 환경관련. 중요한 3가지 변수는 아래와 같습니다(윈도우10 64/인텔 기준입니다).
set GO111MODULE= //이부분설정없어도 잘 됩니다.
set GOPATH=D:\workspace\GO //개인프로젝트 위치로 설정
set GOROOT=C:\Program Files\Go
2. VSCode 를 실행시, 프로젝트 폴더에서 실행해야함, 이렇게 안하면 환경변수문제가 발생할 가능성이 높습니다.
현재 폴더를 프로젝트 폴더로 해서 VSCode 가 실행됩니다.
d:\workspace\GO\nomad>code . //. 앞에는 공백 한개 있음
아래의 그림처럼 프로젝트 폴더가 자동으로 설정됨
d:\workspace\GO\nomad\main.go
package main
import (
"GO/nomad/banking"
"fmt"
)
func main() {
account1 := banking.Account{Owner: "kim", Balance: 1000}
fmt.Println(account1)
}
d:\workspace\GO\nomad\banking\banking.go
package banking
// Account struct
type Account struct {
Owner string
Balance int
}
// init 폴더 위치는 GOPATH의 마지막 폴더명(GO) +'/'+ 현재작업중인 프로젝트폴더명(nomad)
// GO/nomad 라고 하면 됨
D:\workspace\GO\nomad>go mod init GO/nomad
go: creating new go.mod: module GO/nomad
go: to add module requirements and sums:
go mod tidy
D:\workspace\GO\nomad>go build // nomad.exe 생성됨
D:\workspace\GO\nomad>dir
2021-10-03 오후 11:51 banking
2021-10-04 오전 01:17 25 go.mod
2021-10-04 오전 01:15 161 main.go
2021-10-04 오전 01:17 2,097,664 nomad.exe
3개 파일 2,097,850 바이트
3개 디렉터리 136,297,881,600 바이트 남음
D:\workspace\GO\nomad>
D:\workspace\GO\nomad>nomad.exe
{kim 1000}
정상 출력이 됩니다.
'GO lang' 카테고리의 다른 글
[GO] Scrapping(2) - Echo server (0) | 2021.10.15 |
---|---|
[GO] Scrapping(1) - URL checker (0) | 2021.10.07 |
[GO] channel (0) | 2021.10.07 |
[GO] 고루틴 (0) | 2021.10.07 |
[GO] 자료구조 - map/dictionary (0) | 2021.10.06 |