Today
-
Yesterday
-
Total
-
  • 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

Designed by Tistory / Custom by 얼거스