[Go] main redeclared in this block 에러

xeomina·2022년 5월 19일
0

Go

목록 보기
2/2

에러

vscode에서 go build 실행 도중 에러 발생

D:\go\test>go build
# example.com/test
.\test2.go:5:6: main redeclared in this block   
        .\test.go:5:6: other declaration of main

해결 방법

.go 파일이 같은 경로에 있다면, 하나의 package 안에 하나의 main 함수만 있어야 한다고 한다.

1) test2.gomain() 함수를 주석 처리

2) go build test.go

3) test2.go 파일 경로 이동

참고

Main 패키지

일반적으로 패키지는 라이브러리로서 사용되지만, main 이라고 명명된 패키지는 Go Compiler에 의해 특별하게 인식된다. 패키지명이 main 인 경우, 컴파일러는 해당 패키지를 공유 라이브러리가 아닌 실행(executable) 프로그램으로 만든다. 그리고 이 main 패키지 안의 main() 함수가 프로그램의 시작점 즉 Entry Point가 된다. 패키지를 공유 라이브러리로 만들 때에는, main 패키지나 main() 함수를 사용해서는 안된다.

0개의 댓글