Categories
GO언어 프로그래밍

고언어 ( Golang) 프로젝트를 새롭게 fork 후 빌드도중 발생하는 오류 해결하기 ~ malformed module path “PROJECTNAME”: missing dot in first path element

새롭게 fork 해서 경로가 바뀐뒤 빌드를 위해 모듈 처리를 하는중 다음과 같은 오류가 뜨는 경우가 있습니다.

> go mod vendor
go: finding github.com/...
go: downloading github.com/...
go: extracting github.com/...
PROJECTNAME imports
        PROJECTNAME: malformed module path "PROJECTNAME": missing dot in first path element

약간 불필요한 부분을 날려버려서 조금 이상해 보이지만.. 대체적으로 이런형태로 에러가 나옵니다.

import 시 첫 경로인 PROJECTNAME 은 도메인 형식으로 (.) , 즉 점(dot)을 포함해야 합니다.

PRJECTNAME 을 도메인 이름 형식인 PROJECTNAME.COM 등으로 변경하면 오류없이 진행이 됩니다.

또한 아래와 같이 사용중이 패키지가 경로가 바뀌어서 모듈 경로를 찾을 수 없게되는 경우가 있습니다.

이런경우 소스 전체의 import 경로를 올바른 경로로 변경하고 아래와 같이 go.mod, go.sum 파일을 삭제하고 모듈 의존성을 새롭게 초기화 해주면 됩니다.

> go mod vendor
go: finding gopkg.in/urfave/cli.v1 v1.22.1
go: finding gopkg.in/urfave/cli.v1 v1.22.1
PRJECTNAME.COM imports
        gopkg.in/urfave/cli.v1: cannot find module providing package gopkg.in/urfave/cli.v1

# 모든 소스의 import 경로를 새롭게 변경된 주소 github.com/urfave/cli 로 변경합니다. 
# 의존성 파일을 삭제 
> rm go.mod go.sum
> go mod init
> go mod vendor

이제 실행파일 빌드가 정상적으로 될 것입니다.