티스토리 뷰

반응형

아래와 같은 패키지 구조가 있다고 하자.

[my_first_go] tree -L 3
.
└── src
    ├── helper
    │   ├── my_first_helper.go
    │   └── my_second_helper.go
    └── main.go
[my_first_go]

이 때, 각 파일은 다음과 같은 내용을 포함한다.

// main.go
package main

func main() {}
// my_first_helper.go
package helper

import "fmt"

func RunFirstHelper() {
	fmt.Println("Running first helper!!!")
}
// my_second_helper.go
package helper

import "fmt"

func RunSecondHelper() {
	fmt.Println("Running second helper...")
}

이 경우 main.go에서 helper 패키지를 사용한다면 commonJS 모듈을 사용하는 Node.js의 경우 main 에서 require('./helper/my_first_helper')와 같은 형태로 import 할텐데, golang에서는 다음과 같이 진행해야 한다.

  1. go mod init [모듈명]
  2. main.go를 아래와 같이 수정
package main

import (
	"모듈명/src/helper"
)

func main() {
	helper.RunFirstHelper()
	helper.RunSecondHelper()
}

이제 go run src/main.go와 같이 실행해보자.

[my_first_go] go run src/main.go
Running first helper!!!
Running second helper...
[my_first_go]

하나하나 막혀서 화가 난다

댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함