-
Go : 여러개의 멀티 프로젝트 실행Language/고 Go 2023. 12. 17. 00:01
참고 : https://dev.to/chandrapenugonda/vscode-multiple-go-projects-in-a-directorygo-118-3l7i
vscode에서 go 1.18 버전 이상부터 적용되는 방법이다. goland를 통해서 실행하면 왠만한 실행 에러는 피해가는것 같다.
하지만 난 가난한 취준생이기 때문에 무료인 vscode로 진행하였다.
프로젝트 구조가 다음과 같을 때 실행 에러/경고가 발생하지 않는다.
go ├─ section1 │ ├─ go.mod │ └─ test.go ├─ section2 │ ├─ go.mod │ └─ var1.go └─ go.work
go 프로젝트 안에 section1 프로젝트와 section2 프로젝트가 있다고 볼 수 있다.
각각의 프로젝트를 경고 및 에러 없이 실행하기 위해서는
각각의 프로젝트를 모듈로 만든 다음,
루트 디렉토리인 go 위치에서 terminal을 통해
go work
작업을 해주어야 하고go work에 하위 모듈을 등록해주어야 한다.
0. 하위 프로젝트를 모듈로 등록
아래 코드에서 관리자는 작성해주지 않아도 실행이 되었다. 하지만 공식문서에서는 관리자를 입력하라고 나와있음. 마치 java 프로젝트에서 com.example.test/Test.java 와 같이 생성되는 느낌을 받았다.
go mod init 관리자/모듈이름
또는
go mod init 모듈이름
나의 경우 다음과 같이 작성
go mod init section1
go mod init section2
1. 루트 디렉토리 work 생성
코드
go work init
go.work 파일 생성 확인!
2. work에 하위 모듈 등록
모듈 이름이 section1 , section2 일 때
코드
go work use ./section1
go work use ./section2
go.work 파일 확인
go 1.21.3 use ( ./section1 ./section2 )
3. 실행!
이제 실행하면 경고/에러 없이 실행된다.
'Language > 고 Go' 카테고리의 다른 글
Go : Switch 조건문 (0) 2023.12.17 Go : if 조건문 (0) 2023.12.17 Go : 열거형 상수 (0) 2023.12.17 Go : 자료형 및 변수, 상수 (0) 2023.12.17 Go : Windows11에서 Go 환경 셋팅 (0) 2023.12.17