본문 바로가기

카테고리 없음

go 패키지 내가 생각했던거랑 달랐다.

자바처럼 pcakge 이름을 아래처럼 쓸수있는지 알았다.

package business_service.CM_0100

이런식으로 그런데 에러가 발생했다.

.이 아니라 새로운 라인을 기대했다고 한다.

그래서 찾아보니

https://jacking75.github.io/go_diff_packagePath_packageName/

 

golang - Go 패키지 경로와 패키지 이름은 달라도 좋은가? - jacking75

원문 Go 에서는 패키지 패스의 최후의 요소는 go 파일의 패키지 이름과 같이 하는 것이 관례인데 “서로 다르면 어떻게 될까?” 확인해 보자 경로 트리 $ GOPATH / + - src / + - japan / + - main.go + - area / + - chugoku.go 변경 전 : 패키지 경로의 마지막 요소와 패키지 이름이 같다 마지막 요소 : area 패키지 이름 : area area/chugoku.go package area import "f

jacking75.github.io

이사이트가 나왔는데 go는 실제로 패키지 경로는
src폴더 밑에서 부터 시작하는 폴더 경로로 시작하고
AA폴더/BB폴더

이런식이면
import (
   AA폴더/BB폴더

)

이런식으로 쓰이면
최종 BB폴더 밑에 파일들의 패키지 명은 폴더 경로명과 관계없다고 한다.

BBB폴더 밑에 

CC.go파일에
패키지명이 
package AA
func    Hello_world(

)

라면 다른 곳에서는 

 

import (
   AA폴더/BB폴더
)

func main(
    AA.Hello_world()
)

이렇게 쓰인다. 즉 명시하는 패키지경로와 패키지 명은 다를 수있다.